代码来源于“易宁”大佬的分享,仅供学习,不要直接复制粘贴。

原帖链接:http://bbs.3dmgame.com/thread-3859071-1-1.html


 1
 2二八一.菜市场(在兔房买卖农产品)
 3
 4	MT管理器打开游戏目录/assets/DLC0002/scripts/prefabs/rabbithouse.lua文件,在inst:AddComponent("inspectable")的下一行插入以下内容:
 5
 6local function ShouldAcceptItem(inst, item)
 7	if item.prefab == "cave_banana" or item.prefab == "carrot" or item.prefab == "corn" or item.prefab == "pumpkin" or item.prefab == "eggplant" or item.prefab == "durian" or item.prefab == "pomegranate" or item.prefab == "dragonfruit" or item.prefab == "berries" or item.prefab == "cactus_meat" or item.prefab == "watermelon" or item.prefab == "acorn" or item.prefab == "goldnugget" then
 8	   return true
 9	end
10	return false
11end
12local function OnGetItemFromPlayer(inst, giver, item)
13	if item.prefab == "cave_banana" or item.prefab == "carrot" or item.prefab == "corn" or item.prefab == "pumpkin" or item.prefab == "eggplant" or item.prefab == "durian" or item.prefab == "pomegranate" or item.prefab == "dragonfruit" or item.prefab == "berries" or item.prefab == "cactus_meat" or item.prefab == "watermelon" or item.prefab == "acorn" then
14	   local goldnugget = SpawnPrefab("goldnugget")
15	   giver.components.inventory:GiveItem(goldnugget)
16	end
17	if item.prefab == "goldnugget" then
18	   local names = {"cave_banana","carrot","corn","pumpkin","eggplant","durian","pomegranate","dragonfruit","berries","cactus_meat","watermelon","acorn"}
19	   local name = names[math.random(#names)]
20	   local veggie = SpawnPrefab(name)
21	   giver.components.inventory:GiveItem(veggie)
22	end
23end
24	inst:AddComponent("trader")
25	inst.components.trader.onaccept = OnGetItemFromPlayer
26	inst.components.trader:SetAcceptTest(ShouldAcceptItem)
27
28	即可将种出来的农产品卖给兔房(拿着农产品左键点兔房),获得1个黄金,黄金会自动打入账户(主角物品条)。也可以给兔房黄金,买入随机品种的农产品,可以买卖的农产品包括香蕉、胡萝卜、茄子、南瓜、玉米、榴莲、石榴、火龙果、浆果、仙人掌肉、西瓜、橡果