《饥荒》是一款由Klei Entertainment生存类,作为中一种重要资源,蕨类植物在中扮演了非常重要角。在文中,我们将讨论饥荒蕨类植物代码实现。
蕨类植物生成
蕨类植物在饥荒中是一种自然生成植物,它们生长在地和森林等地方。在中,我们需要实现蕨类植物自然生成和消失,这需要编写相应代码。
在饥荒中,蕨类植物生成是由地图生成器控制,代码如下:
function GenerateFern(inst, x, y, z)
local fern = SpawnPrefab(\fern\ if fern ~= nil then
fern.Tranorm:SetPosition(x, y, z)
fern.persists = false
inst:AddChild(fern)
if fernponents.pickable ~= nil then
fernponents.pickable:MakeEmpty()
end
end
end
AddRoomPreInit(\Forest\ function(om)
om.contents.counts.fern = math.random(0, 6)
end)
AddPrefabPostInit(\world\ function(inst)
inst:DoTaskInTime(0, function()
for i, node in ipairs(GLOBAL.TheWorld.topolo.nodes) do
if node.type == \Forest\ then
local ents = TheSim:FindEntities(node.x, 0, node.y, 10000)
local count = 0
for k, v in pairs(ents) do
if v.prefab == \fern\ then
count = count 1
end
end
for j = count 1, node.contents.counts.fern do
local x, y, z = TheWorld.Map:GetRandomPointInRect(node.x, 0, node.y, node.width, node.height)
GenerateFern(inst, x, y, z)
end
end
end
end)
end)
以上代码中,GenerateFern函数用于生成一个蕨类植物实例,并添加到地图中。AddRoomPreInit函数用于在开始时为每个区域设置蕨类植物数量。AddPrefabPostInit函数用于在生成地图后逐个区域地寻找蕨类植物数量,并用GenerateFern函数生成蕨类植物实例。
蕨类植物生长和消失
在饥荒中,蕨类植物会随着时间推移逐渐生长,并终亡。为了实现这一过程,我们需要编写生长和消失代码。
以下是蕨类植物生长代码:
local function CheckGwth(inst)
if instponents.pickable ~= nil then
instponents.pickable:MakeEmpty()
end
inst.AnimState:SetPercent(\gw\ instponents.gwable:GetPercent())
end
local function OnGwth(inst)
CheckGwth(inst)
inst.flowers = TheSim:FindEntities(inst.Tranorm:GetWorldPosition(), 2, {\flower\ for k,v in pairs(inst.flowers) do
v:Remove()
end
end
local function OnPicked(inst, picker)
inst.AnimState:PlayAnimation(\picking\ inst.AnimState:PushAnimation(\picked\ false)
instponents.lootper:DpLoot()
if instponents.gwable ~= nil then
instponents.gwable:StopGg()
end
if instponents.decoupler ~= nil then
instponents.decoupler:Detach()
end
inst:ListenForEvent(\animqueueover\ function() inst:Remove() end )
end
以上代码中,CheckGwth函数用于检测蕨类植物生长状态,OnGwth函数用于在蕨类植物生长时执行相关代码,OnPicked函数用于在蕨类植物被采摘时执行相关代码。
以下是蕨类植物消失代码:
local function OnEntitySleep(inst)
inst:Remove()
end
local function OnRemoveEntity(inst)
inst:RemoveEventCallback(\entitysleep\ OnEntitySleep)
end
以上代码中,OnEntitySleep函数和OnRemoveEntity函数用于在蕨类植物被移除时执行相关代码。
综上所述
通过以上代码实现,我们可以在饥荒中生成并蕨类植物。对于领域创作者来说,编写这样代码是非常重要能力。通过不断地学习和实践,我们可以在中实现更加复杂能,并不断提高自己技能水平。
植物山羊是一款风靡全球休闲,玩家需要通过种植植物和放置山羊方式来保护自己家园。下面将为大家介绍如何下载和安装植物山羊。
步骤一:选择下载
植物山羊可以在多个进行下载,例如App Store、Google Play、站等。建议大家选择站进行下载,以获得版。
步骤二:下载
在站中找到植物山羊下载链接,进入下载页面。根据自己作选择相应版进行下载。下载完成后,将文件保存至自己设备中。
步骤三:安装
在设备中找到已下载文件,进入安装程序。根据安装程序提示进行作,直到安装完成。
步骤四:运行
在安装完成后,可以在设备应用列表中找到植物山羊。进入,根据提示进行作即可开始。
注意:运行前需要确保设备有足够存储空间,并且在运行时需要连接到互联。
上面讲到就是植物山羊下载和安装,希望能够帮助到大家。
【相关阅读】