Compare commits
12 Commits
11b26bb693
...
69231bc92a
| Author | SHA1 | Date |
|---|---|---|
|
|
69231bc92a | |
|
|
ed4766e772 | |
|
|
292afff6ce | |
|
|
5609e0c21c | |
|
|
6575b2685f | |
|
|
74f7436ab3 | |
|
|
1d6ae6066d | |
|
|
7ea470758e | |
|
|
8c59d63fa8 | |
|
|
3bdef5bc72 | |
|
|
62a11f76d2 | |
|
|
d3720d879b |
|
|
@ -0,0 +1,4 @@
|
||||||
|
[*.cs]
|
||||||
|
|
||||||
|
# IDE0130: Namespace does not match folder structure
|
||||||
|
dotnet_style_namespace_match_folder = false
|
||||||
|
|
@ -54,6 +54,7 @@ public class HookahAssetBuilder
|
||||||
FileName = "dotnet",
|
FileName = "dotnet",
|
||||||
Arguments = "build",
|
Arguments = "build",
|
||||||
UseShellExecute = false,
|
UseShellExecute = false,
|
||||||
|
WorkingDirectory = ModProjectPath,
|
||||||
};
|
};
|
||||||
|
|
||||||
var proc = Process.Start(psi);
|
var proc = Process.Start(psi);
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<AssemblyName>Ratijas.HookahPlace</AssemblyName>
|
<AssemblyName>Ratijas.HookahPlace</AssemblyName>
|
||||||
<Product>HookahPlace</Product>
|
<Product>HookahPlace</Product>
|
||||||
<Version>4.1.9</Version>
|
<Version>4.2.0</Version>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<!-- Project Properties -->
|
<!-- Project Properties -->
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
|
|
@ -44,7 +44,7 @@
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<DawnLibVersion>0.7.3</DawnLibVersion>
|
<DawnLibVersion>0.7.11</DawnLibVersion>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<!-- Primary Package References - BepInEx -->
|
<!-- Primary Package References - BepInEx -->
|
||||||
|
|
@ -54,6 +54,10 @@
|
||||||
<PackageReference Include="BepInEx.Core" Version="5.*" PrivateAssets="all"/>
|
<PackageReference Include="BepInEx.Core" Version="5.*" PrivateAssets="all"/>
|
||||||
<PackageReference Include="BepInEx.PluginInfoProps" Version="2.*" PrivateAssets="all"/>
|
<PackageReference Include="BepInEx.PluginInfoProps" Version="2.*" PrivateAssets="all"/>
|
||||||
<PackageReference Include="LethalCompany.GameLibs.Steam" Version="*-*" PrivateAssets="all"/>
|
<PackageReference Include="LethalCompany.GameLibs.Steam" Version="*-*" PrivateAssets="all"/>
|
||||||
|
<PackageReference Include="Microsoft.Unity.Analyzers" Version="1.25.0">
|
||||||
|
<PrivateAssets>all</PrivateAssets>
|
||||||
|
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
|
||||||
|
</PackageReference>
|
||||||
<PackageReference Include="UnityEngine.Modules" Version="2022.3.62" PrivateAssets="all"/>
|
<PackageReference Include="UnityEngine.Modules" Version="2022.3.62" PrivateAssets="all"/>
|
||||||
<PackageReference Include="TeamXiaolan.DawnLib" Version="$(DawnLibVersion)" PrivateAssets="all"/>
|
<PackageReference Include="TeamXiaolan.DawnLib" Version="$(DawnLibVersion)" PrivateAssets="all"/>
|
||||||
<PackageReference Include="TeamXiaolan.DawnLib.DuskMod" Version="$(DawnLibVersion)" />
|
<PackageReference Include="TeamXiaolan.DawnLib.DuskMod" Version="$(DawnLibVersion)" />
|
||||||
|
|
|
||||||
|
|
@ -12,10 +12,12 @@ Become a ship-mom (or a ship-dad) and smoke shisha while guiding your crew over
|
||||||
|
|
||||||
The mod adds a ship decor/furniture to the store called "Hookah".
|
The mod adds a ship decor/furniture to the store called "Hookah".
|
||||||
|
|
||||||
The store rotates between random 4-6 entries every quota. To make the hookah always available in the store, use another mod like [`StoreRotationConfig` by `pacoito`](https://thunderstore.io/c/lethal-company/p/pacoito/StoreRotationConfig/) with the `stockAll` option toggled ON.
|
The store rotates between random 4-6 entries every quota. To make the hookah always available in the store, use another mod like [`StoreRotationConfig` by `pacoito`](https://thunderstore.io/c/lethal-company/p/pacoito/StoreRotationConfig/) with the `stockAll` option toggled ON or add "Hookah" (with capital 'H', without quotes) to the `itemWhitelist`.
|
||||||
|
|
||||||
## Made by Ratijas
|
## Made by Ratijas
|
||||||
|
|
||||||
|
See also [mod's release thread](https://discord.com/channels/1168655651455639582/1465126696117076242) at [Lethal Company Modding](https://discord.gg/XeyYqRdRGC) Discord server (in case the invite link expires, there should be a fresh one at [lethal.wiki](https://lethal.wiki/)).
|
||||||
|
|
||||||
Also check out my other mod, 🎵 [Muzika Gromche — The ultimate Jester party music mod](https://thunderstore.io/c/lethal-company/p/Ratijas/MuzikaGromche/)!
|
Also check out my other mod, 🎵 [Muzika Gromche — The ultimate Jester party music mod](https://thunderstore.io/c/lethal-company/p/Ratijas/MuzikaGromche/)!
|
||||||
|
|
||||||
Hookah model made in Blender: [HookahPlace.blend](https://ratijas.me/share/public/LC/HookahPlace/HookahPlace.blend)
|
Hookah model made in Blender: [HookahPlace.blend](https://ratijas.me/share/public/LC/HookahPlace/HookahPlace.blend)
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,7 @@
|
||||||
|
# 4.2.0
|
||||||
|
|
||||||
|
Fixed Hookah unlockable item disappearing after reloading a save file.
|
||||||
|
|
||||||
# 4.1.9
|
# 4.1.9
|
||||||
|
|
||||||
Inital release
|
Inital release
|
||||||
|
|
|
||||||
|
|
@ -4,14 +4,14 @@ schemaVersion = "0.0.1"
|
||||||
[package]
|
[package]
|
||||||
namespace = "Ratijas"
|
namespace = "Ratijas"
|
||||||
name = "HookahPlace"
|
name = "HookahPlace"
|
||||||
versionNumber = "4.1.9"
|
versionNumber = "4.2.0"
|
||||||
description = "Relaxing hookah as a ship upgrade"
|
description = "Relaxing hookah as a ship upgrade"
|
||||||
websiteUrl = "https://git.vilunov.me/ratijas/HookahPlace"
|
websiteUrl = "https://git.vilunov.me/ratijas/HookahPlace"
|
||||||
containsNsfwContent = false
|
containsNsfwContent = false
|
||||||
|
|
||||||
[package.dependencies]
|
[package.dependencies]
|
||||||
BepInEx-BepInExPack = "5.4.2304"
|
BepInEx-BepInExPack = "5.4.2304"
|
||||||
TeamXiaolan-DawnLib = "0.7.3"
|
TeamXiaolan-DawnLib = "0.7.11"
|
||||||
|
|
||||||
[build]
|
[build]
|
||||||
icon = "./icon.png"
|
icon = "./icon.png"
|
||||||
|
|
|
||||||
Binary file not shown.
|
|
@ -1,22 +0,0 @@
|
||||||
using BepInEx.Configuration;
|
|
||||||
using Dusk;
|
|
||||||
|
|
||||||
namespace HookahPlace.Content;
|
|
||||||
|
|
||||||
internal static class NukeDawnLibConfig
|
|
||||||
{
|
|
||||||
static internal void NukeUnlockable(ConfigFile config, string heading, string name, int cost)
|
|
||||||
{
|
|
||||||
heading = $"{heading} Options";
|
|
||||||
var costName = $"{name} | Cost";
|
|
||||||
var disclaimer = "Sorry, this is not configurable. This is a dirty hack to suppress DawnLib/DuskMod from allowing any configurability here.";
|
|
||||||
|
|
||||||
var ctx = new ConfigContext(config, heading);
|
|
||||||
|
|
||||||
var enabledEntry = ctx.Bind("Enabled", disclaimer, true);
|
|
||||||
enabledEntry.Value = true;
|
|
||||||
|
|
||||||
var costEntry = ctx.Bind(costName, disclaimer, cost);
|
|
||||||
costEntry.Value = cost;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -4,12 +4,8 @@ namespace HookahPlace.Content;
|
||||||
|
|
||||||
public class HookahContentHandler : ContentHandler<HookahContentHandler>
|
public class HookahContentHandler : ContentHandler<HookahContentHandler>
|
||||||
{
|
{
|
||||||
const int HOOKAH_PRICE = 130;
|
|
||||||
|
|
||||||
public HookahContentHandler(DuskMod mod) : base(mod)
|
public HookahContentHandler(DuskMod mod) : base(mod)
|
||||||
{
|
{
|
||||||
NukeDawnLibConfig.NukeUnlockable(HookahPlace.Config, "HookahUnlockable", "Hookah", HOOKAH_PRICE);
|
|
||||||
|
|
||||||
if (!RegisterContent("hookahunlockableassets", out DefaultBundle? bundle, forceEnabled: true) || bundle == null)
|
if (!RegisterContent("hookahunlockableassets", out DefaultBundle? bundle, forceEnabled: true) || bundle == null)
|
||||||
{
|
{
|
||||||
HookahPlace.Logger.LogError($"Failed to register content");
|
HookahPlace.Logger.LogError($"Failed to register content");
|
||||||
|
|
@ -7,6 +7,7 @@ using Dawn.Utils;
|
||||||
using HarmonyLib;
|
using HarmonyLib;
|
||||||
using Dusk;
|
using Dusk;
|
||||||
using BepInEx.Configuration;
|
using BepInEx.Configuration;
|
||||||
|
using HookahPlace.Content;
|
||||||
|
|
||||||
namespace HookahPlace;
|
namespace HookahPlace;
|
||||||
|
|
||||||
|
|
@ -17,8 +18,6 @@ public class HookahPlace : BaseUnityPlugin
|
||||||
internal new static ManualLogSource Logger { get; private set; } = null!;
|
internal new static ManualLogSource Logger { get; private set; } = null!;
|
||||||
internal new static ConfigFile Config { get; private set; } = null!;
|
internal new static ConfigFile Config { get; private set; } = null!;
|
||||||
|
|
||||||
internal static PersistentDataContainer PersistentData { get; private set; } = null!;
|
|
||||||
|
|
||||||
internal static DuskMod Mod { get; private set; } = null!;
|
internal static DuskMod Mod { get; private set; } = null!;
|
||||||
|
|
||||||
private void Awake()
|
private void Awake()
|
||||||
|
|
@ -28,17 +27,11 @@ public class HookahPlace : BaseUnityPlugin
|
||||||
|
|
||||||
Harmony.CreateAndPatchAll(Assembly.GetExecutingAssembly(), MyPluginInfo.PLUGIN_GUID);
|
Harmony.CreateAndPatchAll(Assembly.GetExecutingAssembly(), MyPluginInfo.PLUGIN_GUID);
|
||||||
|
|
||||||
// Example Persistent Data Container Usage
|
|
||||||
// You can do anything you want with this DataContainer, there are a few additonal ones under the DawnLib class that pertain to actual save files
|
|
||||||
PersistentData = this.GetPersistentDataContainer();
|
|
||||||
|
|
||||||
// e.g. track the last version the player played with, could be useful if you want do to stuff like setting migration.
|
|
||||||
// if you want to do config migration you should use DawnLib.GetCurrentInstallSave instead.
|
|
||||||
PersistentData.Set(HookahPlaceKeys.LastVersion, MyPluginInfo.PLUGIN_VERSION);
|
|
||||||
|
|
||||||
AssetBundle mainBundle = AssetBundleUtils.LoadBundle(Assembly.GetExecutingAssembly(), "hookahplaceasset");
|
AssetBundle mainBundle = AssetBundleUtils.LoadBundle(Assembly.GetExecutingAssembly(), "hookahplaceasset");
|
||||||
Mod = DuskMod.RegisterMod(this, mainBundle);
|
Mod = DuskMod.RegisterMod(this, mainBundle);
|
||||||
Mod.RegisterContentHandlers();
|
|
||||||
|
// Effectively the same as `Mod.RegisterContentHandlers();` but simpler and faster
|
||||||
|
_ = new HookahContentHandler(Mod);
|
||||||
|
|
||||||
Logger.LogInfo($"{MyPluginInfo.PLUGIN_GUID} v{MyPluginInfo.PLUGIN_VERSION} has loaded!");
|
Logger.LogInfo($"{MyPluginInfo.PLUGIN_GUID} v{MyPluginInfo.PLUGIN_VERSION} has loaded!");
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue