This commit is contained in:
verniy709 2025-05-08 08:39:17 -05:00
parent 55c03683fb
commit ef485b76aa
31 changed files with 901 additions and 396 deletions

Binary file not shown.

View File

@ -39,6 +39,9 @@
</lootBoxList>
</li>
<li Class="SimpleLootBox.CompProperties_LootBox">
<lootBoxOpenSound>lootBoxOpenSound</lootBoxOpenSound><!-- 进入开箱界面的音效 -->
<lootBoxSpinningSound>lootBoxSpinningSound</lootBoxSpinningSound><!-- 选取物品时的音效单曲循环sustainer -->
<lootBoxBackgroundMusicSound>lootBoxBackgroundMusicSound</lootBoxBackgroundMusicSound><!-- 开箱界面的背景音乐单曲循环sustainer -->
<lootBoxThingDef>
<li>
<thingDef>Silver</thingDef><!-- 箱子可以开出的物品的定义名 -->
@ -46,6 +49,7 @@
<weight>5</weight><!-- 这项奖励的生成权重 -->
<rarity>2</rarity><!-- 这项奖励的稀有度(使用的颜色与文本)可用选项 0 1 2 3 4 5 不填默认为0数字越大稀有度越高-->
<effecterDef>Skip_ExitNoDelay</effecterDef><!-- 生成奖励时可以播放的特效,不设置就没特效 -->
<lootBoxFinalizingRewardSound>lootBoxFinalizingRewardSound</lootBoxFinalizingRewardSound><!-- 该奖励被选中时的音效 -->
</li>
<li>
<thingDef>Gold</thingDef>
@ -59,7 +63,7 @@
<quality>Masterwork</quality><!-- 如果这个物品有品质,会使用这里设置的品质,可用的品质为 Awful Poor Normal Good Excellent Masterwork Legendary-->
<count>1</count>
<weight>2</weight>
<rarity>1</rarity>
<rarity>2</rarity>
</li>
<li>
<thingDef>MeleeWeapon_MonoSword</thingDef>
@ -104,6 +108,9 @@
</lootBoxList>
</li>
<li Class="SimpleLootBox.CompProperties_LootBox">
<lootBoxOpenSound>lootBoxOpenSound</lootBoxOpenSound>
<lootBoxSpinningSound>lootBoxSpinningSound</lootBoxSpinningSound>
<lootBoxBackgroundMusicSound>lootBoxBackgroundMusicSound</lootBoxBackgroundMusicSound>
<lootBoxPawnKindDef>
<li>
<pawnKindDef>Mercenary_Gunner</pawnKindDef><!-- 箱子可以开出的人物的定义名 -->
@ -159,6 +166,9 @@
</lootBoxList>
</li>
<li Class="SimpleLootBox.CompProperties_LootBox">
<lootBoxOpenSound>lootBoxOpenSound</lootBoxOpenSound>
<lootBoxSpinningSound>lootBoxSpinningSound</lootBoxSpinningSound>
<lootBoxBackgroundMusicSound>lootBoxBackgroundMusicSound</lootBoxBackgroundMusicSound>
<lootBoxPawnKindDef><!-- 箱子开出的奖励可以混合人物和物品 -->
<li>
<pawnKindDef>Mercenary_Gunner</pawnKindDef>
@ -173,6 +183,7 @@
<weight>5</weight>
<rarity>2</rarity>
<effecterDef>Skip_ExitNoDelay</effecterDef>
<lootBoxFinalizingRewardSound>lootBoxFinalizingRewardSound</lootBoxFinalizingRewardSound>
</li>
</lootBoxThingDef>
</li>

View File

@ -0,0 +1,81 @@
<?xml version="1.0" encoding="utf-8"?><Defs>
<SoundDef>
<defName>lootBoxOpenSound</defName>
<maxVoices>1</maxVoices>
<maxSimultaneous>1</maxSimultaneous>
<subSounds>
<li>
<onCamera>True</onCamera>
<grains>
<li Class="AudioGrain_Clip">
<clipPath>SimpleLootBox/lootBoxOpenSound</clipPath><!-- 音频路径-->
</li>
</grains>
<volumeRange>50~50</volumeRange><!-- 音量-->
</li>
</subSounds>
</SoundDef>
<!-- Sustainer 如果该音频需要持续播放需要设置为sustainer-->
<SoundDef>
<defName>lootBoxSpinningSound</defName>
<maxVoices>1</maxVoices>
<maxSimultaneous>1</maxSimultaneous>
<sustain>True</sustain>
<priorityMode>PrioritizeNearest</priorityMode>
<subSounds>
<li>
<muteWhenPaused>False</muteWhenPaused>
<sustainLoop>False</sustainLoop>
<onCamera>True</onCamera>
<grains>
<li Class="AudioGrain_Clip">
<clipPath>SimpleLootBox/lootBoxSpinningSound</clipPath>
</li>
</grains>
<volumeRange>50~50</volumeRange>
</li>
</subSounds>
</SoundDef>
<!-- Sustainer-->
<SoundDef>
<defName>lootBoxBackgroundMusicSound</defName>
<maxVoices>1</maxVoices>
<maxSimultaneous>1</maxSimultaneous>
<sustain>True</sustain>
<priorityMode>PrioritizeNearest</priorityMode>
<subSounds>
<li>
<muteWhenPaused>False</muteWhenPaused>
<sustainLoop>False</sustainLoop>
<onCamera>True</onCamera>
<grains>
<li Class="AudioGrain_Clip">
<clipPath>SimpleLootBox/lootBoxBackgroundMusicSound</clipPath>
</li>
</grains>
<volumeRange>35~35</volumeRange>
</li>
</subSounds>
</SoundDef>
<SoundDef>
<defName>lootBoxFinalizingRewardSound</defName>
<maxVoices>1</maxVoices>
<maxSimultaneous>1</maxSimultaneous>
<subSounds>
<li>
<onCamera>True</onCamera>
<grains>
<li Class="AudioGrain_Clip">
<clipPath>SimpleLootBox/lootBoxFinalizingRewardSound</clipPath>
</li>
</grains>
<volumeRange>70~70</volumeRange>
</li>
</subSounds>
</SoundDef>
</Defs>

View File

@ -3,57 +3,64 @@
"WorkspaceRootPath": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\",
"Documents": [
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|d:\\steam\\steamapps\\common\\rimworld\\mods\\simplelootbox\\1.5\\source\\simplelootbox\\lootboxopeningwindow.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:lootboxopeningwindow.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|d:\\steam\\steamapps\\common\\rimworld\\mods\\simplelootbox\\1.5\\source\\simplelootbox\\raritycolor.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:raritycolor.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|d:\\steam\\steamapps\\common\\rimworld\\mods\\simplelootbox\\1.5\\source\\simplelootbox\\lootboxspinner.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\lootboxspinner.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:lootboxspinner.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\lootboxopeningwindow.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:lootboxopeningwindow.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\rarity.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:rarity.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|d:\\steam\\steamapps\\common\\rimworld\\mods\\simplelootbox\\1.5\\source\\simplelootbox\\lootboxthingdef.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:lootboxthingdef.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\lootboxpawnkinddef.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:lootboxpawnkinddef.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\lootboxdatabase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:lootboxdatabase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\lootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:lootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\lootboxdatabase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:lootboxdatabase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\complootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:complootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\compspawnlootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:compspawnlootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\compproperties_spawnlootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:compproperties_spawnlootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|d:\\steam\\steamapps\\common\\rimworld\\mods\\simplelootbox\\1.5\\source\\simplelootbox\\compproperties_lootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:compproperties_lootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\lootboxpawnkinddef.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:lootboxpawnkinddef.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\lootboxthingdef.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:lootboxthingdef.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\complootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:complootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\Users\\Verniy\\Downloads\\LootBoxSpinner.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\harmonypatches\\pawn_kill.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:harmonypatches\\pawn_kill.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\compproperties_lootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:compproperties_lootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\HarmonyPatches\\PatchMain.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:HarmonyPatches\\PatchMain.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\compspawnlootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:compspawnlootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00000000-0000-0000-0000-000000000000}|\u003CSolution\u003E|SimpleLootBox||{04B8AB82-A572-4FEF-95CE-5222444B6B64}|"
},
@ -69,75 +76,50 @@
"DocumentGroups": [
{
"DockedWidth": 200,
"SelectedChildIndex": 1,
"SelectedChildIndex": 0,
"Children": [
{
"$type": "Document",
"DocumentIndex": 1,
"Title": "LootBoxSpinner.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxSpinner.cs",
"RelativeDocumentMoniker": "LootBoxSpinner.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxSpinner.cs",
"RelativeToolTip": "LootBoxSpinner.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAA4AAAAFAAAAAAAAAA==",
"DocumentIndex": 0,
"Title": "RarityColor.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\RarityColor.cs",
"RelativeDocumentMoniker": "RarityColor.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\RarityColor.cs",
"RelativeToolTip": "RarityColor.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-07T20:22:09.628Z",
"WhenOpened": "2025-05-08T13:16:57.175Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 0,
"DocumentIndex": 2,
"Title": "LootBoxOpeningWindow.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxOpeningWindow.cs",
"RelativeDocumentMoniker": "LootBoxOpeningWindow.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxOpeningWindow.cs",
"RelativeToolTip": "LootBoxOpeningWindow.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAwAAAAFAAAAAAAAAA==",
"ViewState": "AgIAAGIAAAAAAAAAAAAuwHEAAABHAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-07T20:18:46.529Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 7,
"Title": "CompLootBox.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompLootBox.cs",
"RelativeDocumentMoniker": "CompLootBox.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompLootBox.cs",
"RelativeToolTip": "CompLootBox.cs",
"ViewState": "AgIAAC8AAAAAAAAAAAAgwIAAAABPAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-06T22:42:42.073Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 3,
"Title": "LootBoxThingDef.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxThingDef.cs",
"RelativeDocumentMoniker": "LootBoxThingDef.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxThingDef.cs",
"RelativeToolTip": "LootBoxThingDef.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAABsAAAABAAAAAAAAAA==",
"Title": "Rarity.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\Rarity.cs",
"RelativeDocumentMoniker": "Rarity.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\Rarity.cs",
"RelativeToolTip": "Rarity.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAgAAAAEAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-06T22:36:06.172Z",
"WhenOpened": "2025-05-07T12:47:11.303Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 9,
"Title": "Pawn_Kill.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\HarmonyPatches\\Pawn_Kill.cs",
"RelativeDocumentMoniker": "HarmonyPatches\\Pawn_Kill.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\HarmonyPatches\\Pawn_Kill.cs",
"RelativeToolTip": "HarmonyPatches\\Pawn_Kill.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAABIAAAAgAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-06T21:58:18.923Z"
},
{
"$type": "Document",
"DocumentIndex": 6,
"DocumentIndex": 4,
"Title": "LootBoxDatabase.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxDatabase.cs",
"RelativeDocumentMoniker": "LootBoxDatabase.cs",
@ -148,19 +130,6 @@
"WhenOpened": "2025-05-07T02:24:30.5Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 4,
"Title": "LootBoxPawnKindDef.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxPawnKindDef.cs",
"RelativeDocumentMoniker": "LootBoxPawnKindDef.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxPawnKindDef.cs",
"RelativeToolTip": "LootBoxPawnKindDef.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAABQAAAAcAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-06T22:37:54.85Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 5,
@ -176,20 +145,117 @@
},
{
"$type": "Document",
"DocumentIndex": 2,
"Title": "Rarity.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\Rarity.cs",
"RelativeDocumentMoniker": "Rarity.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\Rarity.cs",
"RelativeToolTip": "Rarity.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAABAAAAAFAAAAAAAAAA==",
"DocumentIndex": 6,
"Title": "CompSpawnLootBox.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompSpawnLootBox.cs",
"RelativeDocumentMoniker": "CompSpawnLootBox.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompSpawnLootBox.cs",
"RelativeToolTip": "CompSpawnLootBox.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-07T12:47:11.303Z",
"WhenOpened": "2025-05-07T01:26:54.137Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 7,
"Title": "CompProperties_SpawnLootBox.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompProperties_SpawnLootBox.cs",
"RelativeDocumentMoniker": "CompProperties_SpawnLootBox.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompProperties_SpawnLootBox.cs",
"RelativeToolTip": "CompProperties_SpawnLootBox.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAABMAAAABAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-07T01:22:11.223Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 1,
"Title": "LootBoxSpinner.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxSpinner.cs",
"RelativeDocumentMoniker": "LootBoxSpinner.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxSpinner.cs",
"RelativeToolTip": "LootBoxSpinner.cs",
"ViewState": "AgIAAHkAAAAAAAAAAAAuwIgAAAAvAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-07T20:22:09.628Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 8,
"Title": "CompProperties_LootBox.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompProperties_LootBox.cs",
"RelativeDocumentMoniker": "CompProperties_LootBox.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompProperties_LootBox.cs",
"RelativeToolTip": "CompProperties_LootBox.cs",
"ViewState": "AgIAAAMAAAAAAAAAAAAcwBMAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-06T21:54:49.755Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 9,
"Title": "LootBoxPawnKindDef.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxPawnKindDef.cs",
"RelativeDocumentMoniker": "LootBoxPawnKindDef.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxPawnKindDef.cs",
"RelativeToolTip": "LootBoxPawnKindDef.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAoAAAAEAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-06T22:37:54.85Z"
},
{
"$type": "Document",
"DocumentIndex": 10,
"Title": "LootBoxThingDef.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxThingDef.cs",
"RelativeDocumentMoniker": "LootBoxThingDef.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxThingDef.cs",
"RelativeToolTip": "LootBoxThingDef.cs",
"ViewState": "AgIAAAYAAAAAAAAAAAAAAAsAAAAEAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-06T22:36:06.172Z"
},
{
"$type": "Document",
"DocumentIndex": 11,
"Title": "CompLootBox.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompLootBox.cs",
"RelativeDocumentMoniker": "CompLootBox.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompLootBox.cs",
"RelativeToolTip": "CompLootBox.cs",
"ViewState": "AgIAABcAAAAAAAAAAAAmwDAAAABJAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-06T22:42:42.073Z"
},
{
"$type": "Document",
"DocumentIndex": 12,
"Title": "LootBoxSpinner.cs",
"DocumentMoniker": "C:\\Users\\Verniy\\Downloads\\LootBoxSpinner.cs",
"ToolTip": "C:\\Users\\Verniy\\Downloads\\LootBoxSpinner.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-07T23:49:02.745Z"
},
{
"$type": "Document",
"DocumentIndex": 13,
"Title": "Pawn_Kill.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\HarmonyPatches\\Pawn_Kill.cs",
"RelativeDocumentMoniker": "HarmonyPatches\\Pawn_Kill.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\HarmonyPatches\\Pawn_Kill.cs",
"RelativeToolTip": "HarmonyPatches\\Pawn_Kill.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAABIAAAAgAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-06T21:58:18.923Z"
},
{
"$type": "Document",
"DocumentIndex": 14,
"Title": "PatchMain.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\HarmonyPatches\\PatchMain.cs",
"RelativeDocumentMoniker": "HarmonyPatches\\PatchMain.cs",
@ -201,43 +267,7 @@
},
{
"$type": "Document",
"DocumentIndex": 8,
"Title": "CompProperties_SpawnLootBox.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompProperties_SpawnLootBox.cs",
"RelativeDocumentMoniker": "CompProperties_SpawnLootBox.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompProperties_SpawnLootBox.cs",
"RelativeToolTip": "CompProperties_SpawnLootBox.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAA4AAAAsAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-07T01:22:11.223Z"
},
{
"$type": "Document",
"DocumentIndex": 10,
"Title": "CompProperties_LootBox.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompProperties_LootBox.cs",
"RelativeDocumentMoniker": "CompProperties_LootBox.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompProperties_LootBox.cs",
"RelativeToolTip": "CompProperties_LootBox.cs",
"ViewState": "AgIAAAMAAAAAAAAAAAAAABQAAAA6AAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-06T21:54:49.755Z"
},
{
"$type": "Document",
"DocumentIndex": 12,
"Title": "CompSpawnLootBox.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompSpawnLootBox.cs",
"RelativeDocumentMoniker": "CompSpawnLootBox.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompSpawnLootBox.cs",
"RelativeToolTip": "CompSpawnLootBox.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-07T01:26:54.137Z"
},
{
"$type": "Document",
"DocumentIndex": 13,
"DocumentIndex": 15,
"Title": "SimpleLootBox",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\SimpleLootBox.csproj",
"RelativeDocumentMoniker": "SimpleLootBox.csproj",
@ -248,7 +278,7 @@
},
{
"$type": "Document",
"DocumentIndex": 14,
"DocumentIndex": 16,
"Title": "AssemblyInfo.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\Properties\\AssemblyInfo.cs",
"RelativeDocumentMoniker": "Properties\\AssemblyInfo.cs",

View File

@ -3,57 +3,64 @@
"WorkspaceRootPath": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\",
"Documents": [
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|d:\\steam\\steamapps\\common\\rimworld\\mods\\simplelootbox\\1.5\\source\\simplelootbox\\lootboxspinner.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|d:\\steam\\steamapps\\common\\rimworld\\mods\\simplelootbox\\1.5\\source\\simplelootbox\\raritycolor.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:raritycolor.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\lootboxspinner.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:lootboxspinner.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\lootboxopeningwindow.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:lootboxopeningwindow.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\rarity.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:rarity.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|d:\\steam\\steamapps\\common\\rimworld\\mods\\simplelootbox\\1.5\\source\\simplelootbox\\lootboxopeningwindow.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:lootboxopeningwindow.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|d:\\steam\\steamapps\\common\\rimworld\\mods\\simplelootbox\\1.5\\source\\simplelootbox\\lootboxthingdef.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:lootboxthingdef.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\lootboxpawnkinddef.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:lootboxpawnkinddef.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\lootboxdatabase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:lootboxdatabase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\lootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:lootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\lootboxdatabase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:lootboxdatabase.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\complootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:complootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\compspawnlootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:compspawnlootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\compproperties_spawnlootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:compproperties_spawnlootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|d:\\steam\\steamapps\\common\\rimworld\\mods\\simplelootbox\\1.5\\source\\simplelootbox\\compproperties_lootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:compproperties_lootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\lootboxpawnkinddef.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:lootboxpawnkinddef.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\lootboxthingdef.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:lootboxthingdef.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\complootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:complootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\Users\\Verniy\\Downloads\\LootBoxSpinner.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\harmonypatches\\pawn_kill.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:harmonypatches\\pawn_kill.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\compproperties_lootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:compproperties_lootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\HarmonyPatches\\PatchMain.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:HarmonyPatches\\PatchMain.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\compspawnlootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{00FCB9AE-563C-4C61-B2E3-317C008E6254}|SimpleLootBox.csproj|solutionrelative:compspawnlootbox.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{00000000-0000-0000-0000-000000000000}|\u003CSolution\u003E|SimpleLootBox||{04B8AB82-A572-4FEF-95CE-5222444B6B64}|"
},
@ -74,14 +81,14 @@
{
"$type": "Document",
"DocumentIndex": 0,
"Title": "LootBoxSpinner.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxSpinner.cs",
"RelativeDocumentMoniker": "LootBoxSpinner.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxSpinner.cs",
"RelativeToolTip": "LootBoxSpinner.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAA==",
"Title": "RarityColor.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\RarityColor.cs",
"RelativeDocumentMoniker": "RarityColor.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\RarityColor.cs",
"RelativeToolTip": "RarityColor.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAABUAAAAzAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-07T20:22:09.628Z",
"WhenOpened": "2025-05-08T13:16:57.175Z",
"EditorCaption": ""
},
{
@ -92,52 +99,27 @@
"RelativeDocumentMoniker": "LootBoxOpeningWindow.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxOpeningWindow.cs",
"RelativeToolTip": "LootBoxOpeningWindow.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAwAAAAFAAAAAAAAAA==",
"ViewState": "AgIAAGIAAAAAAAAAAAAuwHEAAABHAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-07T20:18:46.529Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 7,
"Title": "CompLootBox.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompLootBox.cs",
"RelativeDocumentMoniker": "CompLootBox.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompLootBox.cs",
"RelativeToolTip": "CompLootBox.cs",
"ViewState": "AgIAAC8AAAAAAAAAAAAgwIAAAABPAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-06T22:42:42.073Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 3,
"Title": "LootBoxThingDef.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxThingDef.cs",
"RelativeDocumentMoniker": "LootBoxThingDef.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxThingDef.cs",
"RelativeToolTip": "LootBoxThingDef.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAABsAAAABAAAAAAAAAA==",
"Title": "Rarity.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\Rarity.cs",
"RelativeDocumentMoniker": "Rarity.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\Rarity.cs",
"RelativeToolTip": "Rarity.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAgAAAAEAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-06T22:36:06.172Z",
"WhenOpened": "2025-05-07T12:47:11.303Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 9,
"Title": "Pawn_Kill.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\HarmonyPatches\\Pawn_Kill.cs",
"RelativeDocumentMoniker": "HarmonyPatches\\Pawn_Kill.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\HarmonyPatches\\Pawn_Kill.cs",
"RelativeToolTip": "HarmonyPatches\\Pawn_Kill.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAABIAAAAgAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-06T21:58:18.923Z"
},
{
"$type": "Document",
"DocumentIndex": 6,
"DocumentIndex": 4,
"Title": "LootBoxDatabase.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxDatabase.cs",
"RelativeDocumentMoniker": "LootBoxDatabase.cs",
@ -148,19 +130,6 @@
"WhenOpened": "2025-05-07T02:24:30.5Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 4,
"Title": "LootBoxPawnKindDef.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxPawnKindDef.cs",
"RelativeDocumentMoniker": "LootBoxPawnKindDef.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxPawnKindDef.cs",
"RelativeToolTip": "LootBoxPawnKindDef.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAABQAAAAcAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-06T22:37:54.85Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 5,
@ -176,20 +145,117 @@
},
{
"$type": "Document",
"DocumentIndex": 1,
"Title": "Rarity.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\Rarity.cs",
"RelativeDocumentMoniker": "Rarity.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\Rarity.cs",
"RelativeToolTip": "Rarity.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAABAAAAAFAAAAAAAAAA==",
"DocumentIndex": 6,
"Title": "CompSpawnLootBox.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompSpawnLootBox.cs",
"RelativeDocumentMoniker": "CompSpawnLootBox.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompSpawnLootBox.cs",
"RelativeToolTip": "CompSpawnLootBox.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-07T12:47:11.303Z",
"WhenOpened": "2025-05-07T01:26:54.137Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 7,
"Title": "CompProperties_SpawnLootBox.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompProperties_SpawnLootBox.cs",
"RelativeDocumentMoniker": "CompProperties_SpawnLootBox.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompProperties_SpawnLootBox.cs",
"RelativeToolTip": "CompProperties_SpawnLootBox.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAABMAAAABAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-07T01:22:11.223Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 1,
"Title": "LootBoxSpinner.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxSpinner.cs",
"RelativeDocumentMoniker": "LootBoxSpinner.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxSpinner.cs",
"RelativeToolTip": "LootBoxSpinner.cs",
"ViewState": "AgIAAHkAAAAAAAAAAAAuwIgAAAAvAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-07T20:22:09.628Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 8,
"Title": "CompProperties_LootBox.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompProperties_LootBox.cs",
"RelativeDocumentMoniker": "CompProperties_LootBox.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompProperties_LootBox.cs",
"RelativeToolTip": "CompProperties_LootBox.cs",
"ViewState": "AgIAAAMAAAAAAAAAAAAcwBMAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-06T21:54:49.755Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 9,
"Title": "LootBoxPawnKindDef.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxPawnKindDef.cs",
"RelativeDocumentMoniker": "LootBoxPawnKindDef.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxPawnKindDef.cs",
"RelativeToolTip": "LootBoxPawnKindDef.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAoAAAAEAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-06T22:37:54.85Z"
},
{
"$type": "Document",
"DocumentIndex": 10,
"Title": "LootBoxThingDef.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxThingDef.cs",
"RelativeDocumentMoniker": "LootBoxThingDef.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\LootBoxThingDef.cs",
"RelativeToolTip": "LootBoxThingDef.cs",
"ViewState": "AgIAAAYAAAAAAAAAAAAAAAsAAAAEAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-06T22:36:06.172Z"
},
{
"$type": "Document",
"DocumentIndex": 11,
"Title": "CompLootBox.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompLootBox.cs",
"RelativeDocumentMoniker": "CompLootBox.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompLootBox.cs",
"RelativeToolTip": "CompLootBox.cs",
"ViewState": "AgIAABcAAAAAAAAAAAAmwDAAAABJAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-06T22:42:42.073Z"
},
{
"$type": "Document",
"DocumentIndex": 12,
"Title": "LootBoxSpinner.cs",
"DocumentMoniker": "C:\\Users\\Verniy\\Downloads\\LootBoxSpinner.cs",
"ToolTip": "C:\\Users\\Verniy\\Downloads\\LootBoxSpinner.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-07T23:49:02.745Z"
},
{
"$type": "Document",
"DocumentIndex": 13,
"Title": "Pawn_Kill.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\HarmonyPatches\\Pawn_Kill.cs",
"RelativeDocumentMoniker": "HarmonyPatches\\Pawn_Kill.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\HarmonyPatches\\Pawn_Kill.cs",
"RelativeToolTip": "HarmonyPatches\\Pawn_Kill.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAABIAAAAgAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-06T21:58:18.923Z"
},
{
"$type": "Document",
"DocumentIndex": 14,
"Title": "PatchMain.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\HarmonyPatches\\PatchMain.cs",
"RelativeDocumentMoniker": "HarmonyPatches\\PatchMain.cs",
@ -201,43 +267,7 @@
},
{
"$type": "Document",
"DocumentIndex": 8,
"Title": "CompProperties_SpawnLootBox.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompProperties_SpawnLootBox.cs",
"RelativeDocumentMoniker": "CompProperties_SpawnLootBox.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompProperties_SpawnLootBox.cs",
"RelativeToolTip": "CompProperties_SpawnLootBox.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAA4AAAAsAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-07T01:22:11.223Z"
},
{
"$type": "Document",
"DocumentIndex": 10,
"Title": "CompProperties_LootBox.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompProperties_LootBox.cs",
"RelativeDocumentMoniker": "CompProperties_LootBox.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompProperties_LootBox.cs",
"RelativeToolTip": "CompProperties_LootBox.cs",
"ViewState": "AgIAAAMAAAAAAAAAAAAAABQAAAA6AAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-06T21:54:49.755Z"
},
{
"$type": "Document",
"DocumentIndex": 12,
"Title": "CompSpawnLootBox.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompSpawnLootBox.cs",
"RelativeDocumentMoniker": "CompSpawnLootBox.cs",
"ToolTip": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\CompSpawnLootBox.cs",
"RelativeToolTip": "CompSpawnLootBox.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-05-07T01:26:54.137Z"
},
{
"$type": "Document",
"DocumentIndex": 13,
"DocumentIndex": 15,
"Title": "SimpleLootBox",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\SimpleLootBox.csproj",
"RelativeDocumentMoniker": "SimpleLootBox.csproj",
@ -248,7 +278,7 @@
},
{
"$type": "Document",
"DocumentIndex": 14,
"DocumentIndex": 16,
"Title": "AssemblyInfo.cs",
"DocumentMoniker": "D:\\Steam\\steamapps\\common\\RimWorld\\Mods\\SimpleLootBox\\1.5\\Source\\SimpleLootBox\\Properties\\AssemblyInfo.cs",
"RelativeDocumentMoniker": "Properties\\AssemblyInfo.cs",

View File

@ -18,157 +18,96 @@ namespace SimpleLootBox
public override void DoEffect(Pawn usedBy)
{
base.DoEffect(usedBy);
float thingWeightSum = 0f;
float pawnWeightSum = 0f;
if (Props.lootBoxThingDef != null)
thingWeightSum = Props.lootBoxThingDef
.Where(t => t.thingDef != null && t.weight > 0)
.Sum(t => t.weight);
if (Props.lootBoxPawnKindDef != null)
pawnWeightSum = Props.lootBoxPawnKindDef
.Where(t => t.pawnKindDef != null && t.weight > 0)
.Sum(t => t.weight);
float totalWeight = thingWeightSum + pawnWeightSum;
if (totalWeight <= 0f)
{
Log.Warning("SimpleLootBox: No valid thingDef or pawnKindDef.");
}
else
{
float roll = Rand.Value * totalWeight;
if (roll < thingWeightSum)
{
SpawnRandomThing();
}
else
{
SpawnRandomPawn();
}
}
DeleteBox(1);
LootBoxOpeningWindow window = new LootBoxOpeningWindow(this);
Find.WindowStack.Add(window);
}
private void DeleteBox(int count)
public bool Spawn(LootBoxSpinner.SpinItem reward)
{
if (reward.count <= 0) return false;
Map map = parent.Map;
IntVec3 position = parent.Position;
if (reward.thingDef != null)
{
for (int i = 0; i < reward.count; i++)
{
Thing thing;
if (reward.thingDef.MadeFromStuff && reward.stuff != null)
{
thing = ThingMaker.MakeThing(reward.thingDef, reward.stuff);
}
else
{
thing = ThingMaker.MakeThing(reward.thingDef);
}
if (thing.TryGetComp<CompQuality>() != null)
{
thing.TryGetComp<CompQuality>().SetQuality(reward.quality, ArtGenerationContext.Outsider);
}
if (thing.def.Minifiable)
{
Thing minifiedThing = MinifyUtility.MakeMinified(thing);
GenPlace.TryPlaceThing(minifiedThing, parent.Position, parent.Map, ThingPlaceMode.Near);
}
else
{
GenPlace.TryPlaceThing(thing, parent.Position, parent.Map, ThingPlaceMode.Near);
}
if (reward.effecterDef != null)
{
Effecter effecter = reward.effecterDef.Spawn();
effecter.Trigger(new TargetInfo(position, map), new TargetInfo(position, map));
effecter.Cleanup();
}
}
}
else if (reward.pawnKindDef != null)
{
for (int i = 0; i < reward.count; i++)
{
PawnGenerationRequest request = new PawnGenerationRequest(
kind: reward.pawnKindDef,
context: PawnGenerationContext.NonPlayer,
canGeneratePawnRelations: false,
colonistRelationChanceFactor: 0f,
forceGenerateNewPawn: true
);
Pawn pawn = PawnGenerator.GeneratePawn(request);
//Some pawns like mechaoid have no faction, so no null check
pawn.SetFaction(Faction.OfPlayer);
if (pawn.ideo != null)
{
pawn.ideo.SetIdeo(Faction.OfPlayer.ideos.PrimaryIdeo);
}
GenSpawn.Spawn(pawn, position, map, WipeMode.Vanish);
if (reward.effecterDef != null)
{
Effecter effecter = reward.effecterDef.Spawn();
effecter.Trigger(new TargetInfo(position, map), new TargetInfo(position, map));
effecter.Cleanup();
}
}
}
return true;
}
public void DeleteBox(int count)
{
if (parent.stackCount > count)
{
parent.stackCount -= count;
}
else
else if (parent.stackCount == count)
{
parent.Destroy(DestroyMode.Vanish);
}
}
private void PlayEffect(EffecterDef effecterDef, IntVec3 position, Map map)
{
if (effecterDef != null)
{
Effecter effecter = effecterDef.Spawn();
effecter.Trigger(new TargetInfo(position, map), new TargetInfo(position, map));
effecter.Cleanup();
}
}
private void SpawnRandomThing()
{
if (Props.lootBoxThingDef == null)
{
Log.Message("SimpleLootBox: No lootBoxThingDef in the reward list.");
return;
}
var validThings = Props.lootBoxThingDef
.Where(t => t.thingDef != null && t.weight > 0)
.ToList();
if (validThings.Count == 0)
{
Log.Message("SimpleLootBox: No valid thingDef for the lootbox.");
return;
}
var selectedThing = validThings.RandomElementByWeight(t => t.weight);
for (int i = 0; i < selectedThing.count; i++)
{
Thing thing;
if (selectedThing.thingDef.MadeFromStuff && selectedThing.stuff != null)
{
thing = ThingMaker.MakeThing(selectedThing.thingDef, selectedThing.stuff);
}
else
{
thing = ThingMaker.MakeThing(selectedThing.thingDef);
}
if (thing.TryGetComp<CompQuality>() != null)
{
thing.TryGetComp<CompQuality>().SetQuality(selectedThing.quality, ArtGenerationContext.Outsider);
}
if (thing.def.Minifiable)
{
Thing minifiedThing = MinifyUtility.MakeMinified(thing);
GenPlace.TryPlaceThing(minifiedThing, parent.Position, parent.Map, ThingPlaceMode.Near);
}
else
{
GenPlace.TryPlaceThing(thing, parent.Position, parent.Map, ThingPlaceMode.Near);
}
}
PlayEffect(selectedThing.effecterDef, parent.Position, parent.Map);
}
private void SpawnRandomPawn()
{
if (Props.lootBoxPawnKindDef == null)
{
Log.Message("SimpleLootBox: No lootBoxPawnKindDef in the reward list.");
return;
}
var validPawns = Props.lootBoxPawnKindDef
.Where(t => t.pawnKindDef != null && t.weight > 0)
.ToList();
if (validPawns.Count == 0)
{
Log.Message("SimpleLootBox: No valid pawnKind for the lootbox.");
return;
}
var selectedPawn = validPawns.RandomElementByWeight(t => t.weight);
for (int i = 0; i < selectedPawn.count; i++)
{
PawnGenerationRequest request = new PawnGenerationRequest(
kind: selectedPawn.pawnKindDef,
context: PawnGenerationContext.NonPlayer,
canGeneratePawnRelations: false,
colonistRelationChanceFactor: 0f,
forceGenerateNewPawn: true
);
Pawn pawn = PawnGenerator.GeneratePawn(request);
pawn.SetFaction(Faction.OfPlayer);
if (pawn.ideo != null)
{
pawn.ideo.SetIdeo(Faction.OfPlayer.ideos.PrimaryIdeo);
}
GenPlace.TryPlaceThing(pawn, parent.Position, parent.Map, ThingPlaceMode.Near);
}
PlayEffect(selectedPawn.effecterDef, parent.Position, parent.Map);
}
}
}

View File

@ -22,5 +22,9 @@ namespace SimpleLootBox
public SoundDef lootBoxOpenSound;
public SoundDef lootBoxSpinningSound;
public SoundDef lootBoxBackgroundMusicSound;
}
}

View File

@ -6,11 +6,181 @@ using System.Threading.Tasks;
using UnityEngine;
using RimWorld;
using Verse;
using Verse.Sound;
namespace SimpleLootBox
{
public class LootBoxOpeningWindow
public class LootBoxOpeningWindow : Window
{
private static Vector2 scrollPosition = Vector2.zero;
private readonly CompLootBox compLootBox;
private readonly LootBoxSpinner lootBoxSpinner;
private Sustainer backgroundMusicSustainer;
private Sustainer spinningSustainer;
private LootBoxSpinner.SpinItem? pendingFinalizingSoundItem = null;
private LootBoxSpinner.SpinItem? pendingRewardItem = null;
public LootBoxOpeningWindow(CompLootBox comp)
{
this.compLootBox = comp;
this.lootBoxSpinner = new LootBoxSpinner(comp);
this.doCloseX = true;
this.forcePause = true;
}
public override void PreOpen()
{
base.PreOpen();
if (compLootBox.Props.lootBoxOpenSound != null)
{
compLootBox.Props.lootBoxOpenSound.PlayOneShot(SoundInfo.InMap(new TargetInfo(compLootBox.parent.Position, compLootBox.parent.Map)));
}
if (compLootBox.Props.lootBoxBackgroundMusicSound != null)
{
SoundInfo info = SoundInfo.InMap(new TargetInfo(compLootBox.parent.Position, compLootBox.parent.Map), MaintenanceType.PerFrame);
backgroundMusicSustainer = compLootBox.Props.lootBoxBackgroundMusicSound.TrySpawnSustainer(info);
}
this.windowRect.width = 700f;
this.windowRect.height = 800f;
this.windowRect.x = (UI.screenWidth - this.windowRect.width) / 2f;
this.windowRect.y = (UI.screenHeight - this.windowRect.height) / 2f;
}
public override void DoWindowContents(Rect inRect)
{
GUI.BeginGroup(inRect);
lootBoxSpinner.Draw(new Rect(0f, 100f, inRect.width, 150f));
Text.Font = GameFont.Medium;
Text.Anchor = TextAnchor.MiddleCenter;
Widgets.Label(new Rect(0f, 50f, inRect.width, 40f), compLootBox.parent.LabelCap);
backgroundMusicSustainer?.Maintain();
spinningSustainer?.Maintain();
if (spinningSustainer != null && !lootBoxSpinner.IsSpinning)
{
spinningSustainer.End();
spinningSustainer = null;
}
if (Widgets.ButtonText(new Rect(255f, 250f, 150f, 50f), "Open Box", active: compLootBox.parent.stackCount >= 1)
&& compLootBox.parent.stackCount >= 1)
{
LootBoxSpinner.SpinItem itemWon = lootBoxSpinner.Spin();
pendingFinalizingSoundItem = itemWon;
pendingRewardItem = itemWon;
if (compLootBox.Props.lootBoxSpinningSound != null)
{
SoundInfo info = SoundInfo.InMap(new TargetInfo(compLootBox.parent.Position, compLootBox.parent.Map), MaintenanceType.PerFrame);
spinningSustainer = compLootBox.Props.lootBoxSpinningSound.TrySpawnSustainer(info);
}
}
if (!lootBoxSpinner.IsSpinning && pendingRewardItem != null)
{
var item = pendingRewardItem.Value;
bool success = compLootBox.Spawn(item);
if (success)
{
compLootBox.DeleteBox(1);
}
if (item.finalizingSound != null)
{
item.finalizingSound.PlayOneShot(SoundInfo.InMap(new TargetInfo(compLootBox.parent.Position, compLootBox.parent.Map)));
}
pendingRewardItem = null;
pendingFinalizingSoundItem = null;
}
Rect listRect = new Rect(20f, 300f, inRect.width - 20f, inRect.height - 300f);
Rect contentRect = new Rect(listRect.x, listRect.y, listRect.width - 20f, 10f + lootBoxSpinner.PossibleRewards.Count * 20f);
Widgets.BeginScrollView(listRect, ref scrollPosition, contentRect);
Text.Font = GameFont.Small;
for (int i = 0; i < lootBoxSpinner.PossibleRewards.Count; i++)
{
var spinItem = lootBoxSpinner.PossibleRewards[i];
//Color of the background of rarity next to the available rewards
Rect rowRect = new Rect(listRect.x, listRect.y + i * 20f, 100f, 20f);
if (spinItem.rarity == Rarity.None)
{
Widgets.DrawRectFast(rowRect, RarityColors.GetColor(spinItem.rarity));
}
else if(spinItem.rarity == Rarity.Common)
{
Widgets.DrawRectFast(rowRect, RarityColors.GetColor(spinItem.rarity));
}
else if (spinItem.rarity == Rarity.Uncommon)
{
Widgets.DrawRectFast(rowRect, RarityColors.GetColor(spinItem.rarity));
}
else if (spinItem.rarity == Rarity.Rare)
{
Widgets.DrawRectFast(rowRect, RarityColors.GetColor(spinItem.rarity));
}
else if (spinItem.rarity == Rarity.Epic)
{
Widgets.DrawRectFast(rowRect, RarityColors.GetColor(spinItem.rarity));
}
else if (spinItem.rarity == Rarity.Legendary)
{
Widgets.DrawRectFast(rowRect, RarityColors.GetColor(spinItem.rarity));
}
//Color of the background of available reward labels
Rect labelRect = new Rect(listRect.x + 120f, listRect.y + i * 20f, listRect.width - 150f, 20f);
Color rarityColor = RarityColors.GetColor(spinItem.rarity);
if (spinItem.rarity == Rarity.Common)
rarityColor = RarityColors.GetColor(spinItem.rarity);
else if (spinItem.rarity == Rarity.Uncommon)
rarityColor = RarityColors.GetColor(spinItem.rarity);
else if (spinItem.rarity == Rarity.Rare)
rarityColor = RarityColors.GetColor(spinItem.rarity);
else if (spinItem.rarity == Rarity.Epic)
rarityColor = RarityColors.GetColor(spinItem.rarity);
else if (spinItem.rarity == Rarity.Legendary)
rarityColor = RarityColors.GetColor(spinItem.rarity);
Widgets.DrawRectFast(labelRect, rarityColor);
Text.Anchor = TextAnchor.MiddleCenter;
Widgets.Label(new Rect(listRect.x, listRect.y + i * 20f, 100f, 20f), spinItem.rarity.ToString());
string rewardName = spinItem.thingDef != null ? spinItem.thingDef.LabelCap : (spinItem.pawnKindDef?.LabelCap ?? "");
Text.Anchor = TextAnchor.MiddleLeft;
Widgets.Label(new Rect(listRect.x + 120f, listRect.y + i * 20f, listRect.width - 150f, 20f), rewardName);
if (spinItem.count > 1)
{
Text.Anchor = TextAnchor.MiddleRight;
Widgets.Label(new Rect(listRect.x + 120f, listRect.y + i * 20f, listRect.width - 150f, 20f), $"x{spinItem.count}");
}
}
Widgets.EndScrollView();
GUI.EndGroup();
Text.Anchor = TextAnchor.UpperLeft;
Text.Font = GameFont.Small;
}
public override void PostClose()
{
base.PostClose();
if (backgroundMusicSustainer != null)
{
backgroundMusicSustainer.End();
backgroundMusicSustainer = null;
}
if (spinningSustainer != null)
{
spinningSustainer.End();
spinningSustainer = null;
}
}
}
}

View File

@ -20,5 +20,7 @@ namespace SimpleLootBox
public Rarity rarity;
public SoundDef lootBoxFinalizingRewardSound;
}
}

View File

@ -6,11 +6,219 @@ using System.Threading.Tasks;
using RimWorld;
using UnityEngine;
using Verse;
using static SimpleLootBox.LootBoxSpinner;
namespace SimpleLootBox
{
public class CaseSpinner
public class LootBoxSpinner
{
private const int CellCount = 50;
private float speed = 0f;
public bool IsSpinning => speed > 0.1f;
private float position = 0f;
private readonly System.Random rng = new System.Random();
private readonly CompLootBox comp;
private readonly SpinItem[] spinWheelItems = new SpinItem[CellCount];
public List<SpinItem> PossibleRewards { get; private set; } = new List<SpinItem>();
public LootBoxSpinner(CompLootBox comp)
{
this.comp = comp;
LoadPossibleRewards();
for (int i = 0; i < CellCount; i++)
{
spinWheelItems[i] = PickRandomReward();
}
}
private void LoadPossibleRewards()
{
PossibleRewards.Clear();
CompProperties_LootBox props = comp.Props;
if (props.lootBoxThingDef != null)
{
foreach (var thing in props.lootBoxThingDef)
{
if (thing.thingDef == null || thing.weight <= 0) continue;
SpinItem item = new SpinItem(thing.thingDef, thing.stuff, thing.quality, thing.count, thing.rarity, thing.weight, thing.effecterDef, thing.lootBoxFinalizingRewardSound);
PossibleRewards.Add(item);
}
}
if (props.lootBoxPawnKindDef != null)
{
foreach (var pawn in props.lootBoxPawnKindDef)
{
if (pawn.pawnKindDef == null || pawn.weight <= 0) continue;
SpinItem item = new SpinItem(pawn.pawnKindDef, pawn.count, pawn.rarity, pawn.weight, pawn.effecterDef, pawn.lootBoxFinalizingRewardSound);
PossibleRewards.Add(item);
}
}
PossibleRewards.Sort((a, b) =>
{
int r = b.rarity.CompareTo(a.rarity);
if (r != 0) return r;
string an = a.thingDef != null ? a.thingDef.label : a.pawnKindDef?.label ?? "";
string bn = b.thingDef != null ? b.thingDef.label : b.pawnKindDef?.label ?? "";
return string.Compare(an, bn, StringComparison.OrdinalIgnoreCase);
});
}
public void Draw(Rect rect)
{
if (spinWheelItems.Length == 0) return;
speed = Math.Max(speed - 0.2f, 0f);
position += speed;
float totalWidth = rect.width * CellCount * 0.2f;
for (int i = 0; i < CellCount; i++)
{
float x = totalWidth - ((position + rect.width * (i * 0.2f)) % totalWidth) + rect.x - rect.width * 0.2f;
Rect cellRect = new Rect(x, rect.y, rect.width * 0.2f - 5f, rect.height);
SpinItem item = spinWheelItems[i];
if (item.rarity == Rarity.Common)
{
Widgets.DrawRectFast(cellRect, RarityColors.GetColor(item.rarity));
}
else if (item.rarity == Rarity.Uncommon)
{
Widgets.DrawRectFast(cellRect, RarityColors.GetColor(item.rarity));
}
else if (item.rarity == Rarity.Rare)
{
Widgets.DrawRectFast(cellRect, RarityColors.GetColor(item.rarity));
}
else if (item.rarity == Rarity.Epic)
{
Widgets.DrawRectFast(cellRect, RarityColors.GetColor(item.rarity));
}
else if (item.rarity == Rarity.Legendary)
{
Widgets.DrawRectFast(cellRect, RarityColors.GetColor(item.rarity));
}
Rect iconRect = new Rect(x, rect.y + 5f, rect.width * 0.2f - 5f, rect.width * 0.2f - 5f);
Texture iconTex = item.thingDef?.uiIcon;
if (item.pawnKindDef != null)
{
iconTex = item.portrait;
}
if (iconTex != null)
{
Widgets.DrawTextureFitted(iconRect, iconTex, 1f);
}
else
{
Text.Anchor = TextAnchor.MiddleCenter;
Text.Font = GameFont.Tiny;
string label = item.thingDef?.LabelCap ?? item.pawnKindDef?.LabelCap ?? "";
Widgets.Label(iconRect, label);
}
if (item.count > 1)
{
Rect countRect = new Rect(x, rect.y + 20f, rect.width * 0.2f - 5f, rect.width * 0.2f - 5f);
Text.Anchor = TextAnchor.LowerRight;
Text.Font = GameFont.Medium;
Widgets.Label(countRect, "x" + item.count);
}
Text.Font = GameFont.Small;
Text.Anchor = TextAnchor.UpperLeft;
}
Rect bar = new Rect(rect.x + rect.width / 2f - 1f, rect.y, 2f, rect.height);
Widgets.DrawRectFast(bar, new Color(0.0823f, 0.098f, 0.1137f, 1f));
}
public SpinItem Spin()
{
speed = 100.3f;
position = 0f;
for (int i = 0; i < CellCount; i++)
{
spinWheelItems[i] = PickRandomReward();
}
return spinWheelItems[8];
}
public void Stop()
{
speed = 0f;
position = 0f;
}
private SpinItem PickRandomReward()
{
if (PossibleRewards.Count == 0) return default;
double totalWeight = 0;
foreach (var item in PossibleRewards)
{
totalWeight += item.weight;
}
double pick = rng.NextDouble() * totalWeight;
foreach (var item in PossibleRewards)
{
pick -= item.weight;
if (pick <= 0)
return item;
}
return PossibleRewards[PossibleRewards.Count - 1];
}
public struct SpinItem
{
public ThingDef thingDef;
public PawnKindDef pawnKindDef;
public ThingDef stuff;
public QualityCategory quality;
public int count;
public Rarity rarity;
public float weight;
public EffecterDef effecterDef;
public RenderTexture portrait;
public SoundDef finalizingSound;
public SpinItem(ThingDef thingDef, ThingDef stuff, QualityCategory quality, int count, Rarity rarity, float weight, EffecterDef effecter, SoundDef finalizingSound)
{
this.thingDef = thingDef;
this.pawnKindDef = null;
this.stuff = stuff;
this.quality = quality;
this.count = count;
this.rarity = rarity;
this.weight = weight;
this.effecterDef = effecter;
this.portrait = null;
this.finalizingSound = finalizingSound;
}
public SpinItem(PawnKindDef pawnKindDef, int count, Rarity rarity, float weight, EffecterDef effecter, SoundDef finalizingSound)
{
this.thingDef = null;
this.pawnKindDef = pawnKindDef;
this.stuff = null;
this.quality = QualityCategory.Normal;
this.count = count;
this.rarity = rarity;
this.weight = weight;
this.effecterDef = effecter;
this.finalizingSound = finalizingSound;
Pawn pawn = PawnGenerator.GeneratePawn(pawnKindDef);
this.portrait = PortraitsCache.Get(pawn, new Vector2(128f, 128f), Rot4.South, new Vector3(0f, 0f, 0.1f), 1.5f);
}
}
}
}

View File

@ -24,5 +24,7 @@ namespace SimpleLootBox
public QualityCategory quality;
public Rarity rarity = 0;
public SoundDef lootBoxFinalizingRewardSound;
}
}

View File

@ -0,0 +1,27 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using UnityEngine;
namespace SimpleLootBox
{
public static class RarityColors
{
public static Dictionary<Rarity, Color> rarityColorMap = new Dictionary<Rarity, Color>
{
{ Rarity.None, new Color(0.6f, 0.6f, 0.6f) },
{ Rarity.Common, new Color(0.3f, 0.3f, 1f) },
{ Rarity.Uncommon, new Color(0.8f, 0.3f, 1f) },
{ Rarity.Rare, new Color(1f, 0.3f, 0.8f) },
{ Rarity.Epic, new Color(1f, 0.3f, 0.3f) },
{ Rarity.Legendary, new Color(0.85f, 0.7f, 0.2f) }
};
public static Color GetColor(Rarity rarity)
{
return rarityColorMap.TryGetValue(rarity, out var color) ? color : Color.white;
}
}
}

View File

@ -71,6 +71,7 @@
<Compile Include="LootBoxPawnKindDef.cs" />
<Compile Include="LootBoxThingDef.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="RarityColor.cs" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>

View File

@ -1 +1 @@
705e218464d7300a4f75cf5799c059d7889b490b575db1d6f450c55e9775b6b3
e5bf3b320bda89aae16e54c514e180e5e6fc8694d412236eb7aecb06adbb9c82

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.