我们在主场景的触摸事件中,已经判定了玩家选择的植物类型,以及放置的位置,并把它们设置给了战斗层FightLayer,然后调用FightLayer的添加植物方法addPlant添加了植物,植物类的创建我会在后面讲到,现在我们就先当这些类是存在的就好了;我们就来看看这个函数的实现:
因为要用到植物对象,所以我们先把植物类导进来:
local Nut = require("app.plant.Nut")
local Pease = require("app.plant.Pease")
local SunFlower = require("app.plant.SunFlower")
下面是添加植物方法的实现
function FightLayer:addPlant(event)
-- checkint 检查是否为数字并且转换为整形
-- 根据玩家所点的位置,计算出行数和列数
local col=checkint((event.x+LAWN_WIDTH/2-58)/LAWN_WIDTH)
local row=checkint((event.y+LAWN_HEIGHT/2)/LAWN_HEIGHT)
-- 如果越界,返回
if col<1 or col >9 or row<1 or row>5 then