ワークベンチ追加

ワークベンチ追加

バニラのキャンプファイヤーで調理するのはなんか味気ないのですよね
バニラ環境でRavenHearstのサバイバルキャンプファイヤーを使いたいと思ったので試してみました
RavenHearstのモデルをお借りしているので、試す方は個人利用で!&自己責任で!
間違ってもRavenHearstに含まれているデータの二次配布とかしないようにしてください!!

・フォルダ構成

zz_Tripod
│  ModInfo.xml
├─Config
│  │  blocks.xml
│  │  Localization.txt
│  │  recipes.xml
│  │  ui_display.xml
│  │
│  └─XUi
│          windows.xml
│          xui.xml
├─Resources
│      survivalCampfire.unity3d
└─UIAtlases
    └─ItemIconAtlas
            tripod.png

・モデルファイル/iconイメージ

survivalCampfire.unity3d / tripod.png
RavenHearstのWorkbench2_Ravenhearst_SurvivalCampfireからsurvivalCampfire.unity3dとsurvivalCampfireRH.pngをお借りしてきます
今回の追加するワークベンチ名はtripodとするため、png名を変更しています

・windows.xml

とりあえずcampfireベース
required_toolsをいじってビーカーとか追加したり、別のに変えたりすると面白いかも
ここではいろいろいじったデータだとわかりにくくなると思ったのでやってないですが、
フライパンをセットできるようにしたりして遊んでます

<configs>
<append xpath="/windows">

<window name="windowToolTripod" width="228" height="121" panel="Right" cursor_area="true" >
	<panel style="header.panel">
		<sprite style="header.icon" sprite="ui_game_symbol_cookware"/>
		<label style="header.name" text="TOOLS" text_key="xuiTools" />
	</panel>

	<rect name="content" depth="0" pos="0,-46" height="75" disablefallthrough="true">
		<grid name="inventory" rows="1" cols="2" pos="3,-3" cell_width="75" cell_height="75" controller="WorkstationToolGrid" repeat_content="true" required_tools="toolCookingPot,toolCookingGrill" required_tools_only="true">
			<item_stack controller="RequiredItemStack" name="0"/>
		</grid>
	</rect>
</window>

</append>
</configs>

・xui.xml

<configs>
<append xpath="/xui/ruleset[@name='default']">

<window_group name="workstation_tripod" controller="XUiC_WorkstationWindowGroup" open_backpack_on_open="true" close_compass_on_open="true">
	<window name="windowCraftingList"/>
	<window name="craftingInfoPanel"/>
	<window name="windowCraftingQueue"/>
	<window name="windowToolTripod"/>
	<window name="windowFuel"/>
	<window name="windowOutput"/>
	<window name="windowNonPagingHeader"/>
</window_group>

</append>
</configs>

・blocks.xml

campfireベース

<configs>
<append xpath="/blocks">

<block name="tripod">
	<property name="Class" value="Campfire"/>
	<property name="Material" value="MstoneNoGlue"/>
	<property name="MaxDamage" value="100"/>
	<property name="StabilitySupport" value="false"/> <!-- build restriction -->
	<property name="Shape" value="ModelEntity"/>
	<property name="Model" value="#@modfolder:Resources/survivalCampfire.unity3d?survivalCampfire" />
	<property name="ImposterDontBlock" value="true"/>
	<property name="Collide" value="movement,melee,bullet,arrow,rocket"/>
	<property name="IsTerrainDecoration" value="true"/>
	<property name="ParticleName" value="campfire"/>
	<property name="ParticleOffset" value="0.5,0,0.5"/>
	<property name="MultiBlockDim" value="1,2,1"/>
	<property name="Stacknumber" value="1"/>
	<property name="HeatMapStrength" value="5"/>
	<property name="HeatMapTime" value="5000"/>
	<property name="HeatMapFrequency" value="1000"/>
	<property name="BuffsWhenWalkedOn" value="buffBurningEnvironment"/>
	<property name="ActiveRadiusEffects" value="buffCampfireAOE(3)"/>
	<property class="Workstation">
		<property name="CraftingAreaRecipes" value="tripod"/>
		<property name="Modules" value="tools,output,fuel,input"/>
		<property name="Collide" value="melee,bullet,arrow,rocket"/>
	</property>
	<property name="WorkstationIcon" value="ui_game_symbol_campfire"/>
	<property name="CraftActionName" value="lblContextActionCook"/>
	<property name="CraftIcon" value="ui_game_symbol_spatula"/>
	<property name="OpenSound" value="campfire_open"/>
	<property name="CloseSound" value="campfire_close"/>
	<property name="CraftSound" value="campfire_cook_click"/>
	<property name="CraftCompleteSound" value="campfire_complete_item"/>
	<property name="WorkstationJournalTip" value="heatMapTip"/>
	<property name="PickupJournalEntry" value="campfireTip"/>
	<property class="RepairItems">
		<property name="resourceRockSmall" value="5"/>
	</property>
	<drop event="Destroy" name="air" count="0"/>
	<property name="Group" value="Basics,Food/Cooking,Building,advBuilding"/>
	<property name="DescriptionKey" value="campfireDesc"/>
	<property name="EconomicValue" value="5"/>
	<property name="EconomicBundleSize" value="1"/>
	<property name="SellableToTrader" value="false"/>
	<property name="FilterTags" value="MC_playerBlocks,SC_decor"/>
	<property name="SortOrder1" value="70i0"/>
</block>

</append>
</configs>

・recipes.xml

とりあえずcampfireからtripodを作れるようにitemを追加
これだけだと何も作れないtripodができちゃうので、適当に焼き肉を追加※網がなくてもできちゃいます
自分はtripodのレシピを自作で追加したコンクリブロックと鉄筋にしてます

<configs>
<append xpath="/recipes">

<recipe name="tripod" count="1" craft_time="10">
	<ingredient name="campfire" count="1"/>
</recipe>

<recipe name="foodGrilledMeat" count="1" craft_area="tripod" craft_time="10">
	<ingredient name="foodRawMeat" count="5"/>
	<effect_group>
		<passive_effect name="CraftingIngredientCount" level="4,5" operation="base_add" value="-1" tags="foodRawMeat"/>
	</effect_group>
</recipe>

</append>
</configs>

・ui_display.xml

<configs>
<append xpath="/ui_display_info/crafting_category_display" >

<crafting_category_list display_type="tripod">
	<crafting_category name="CFFood/Cooking" icon="ui_game_symbol_fork" display_name="lblCategoryFood"/>
	<crafting_category name="CFDrink/Cooking" icon="ui_game_symbol_thirst" display_name="lblCategoryDrink"/>
</crafting_category_list>

</append>
</configs>

・Localization.txt

Key,english,japanese
tripod,"tripod","トライポッド"
tripodDesc,"tripod","ただのキャンプファイヤーより調理向け"

#7days to die, #7d2d, #A20, #workbench, #campfire