利用3.0里面封装好的模板类来写,不罗嗦,直接上例子(消除星星小游戏中 星星类)
require "extern"
StarSprite = class("StarSprite",function(fileName) return cc.Sprite:create(fileName)
end )
StarSprite.__index = StarSprite
StarSprite.type = 0
--around color StarSprite.UP = "Empty" -- 定义成员变量 在外部可以调用 StarSprite.DOWN = "Empty" StarSprite.LEFT = "Empty" StarSprite.RIGHT = "Empty"
--self color StarSprite.m_selfcolor = "Empty"
--pos in 10*10 StarSprite.m_Matrix_x = -1 StarSprite.m_Matrix_y = -1
--tag StarSprite.m_tag = -1
--Be already Searched 1 找到了 2 没有找到 StarSprite.m_BeSearched = 2
function StarSprite:createByType(typenum,_type) -- 创建实例对象 local buf buf = "star_type_"..typenum..".png" local star = StarSprite.new(buf) --star:setScale(0.4) star:Init(typenum,_type)
return star end
function StarSprite:Init(typenum,_type) -- 初始化 self.type = _type if typenum == 1 then self.m_selfcolor = "green" elseif typenum == 2 then self.m_selfcolor = "blue" elseif typenum == 3 then self.m_selfcolor = "red" elseif typenum == 4 then self.m_selfcolor = "purple" elseif typenum == 5 then self.m_selfcolor = "yellow" else self.m_selfcolor = "Empty" end self:setScale(0.4) self.m_BeSearched = 2
end
function StarSprite:SetAroundColor(upcolor,downcolor,leftcolor,rightcolor) self.UP = upcolor self.DOWN = downcolor self.LEFT = leftcolor self.RIGHT = rightcolor end
function StarSprite:SetMatrixPos(centerx,centery) -- 定义成员方法 在外部可以调用 self.m_Matrix_x = centerx self.m_Matrix_y = centery end function StarSprite:GetMartrixPosX() return self.m_Matrix_x end function StarSprite:GetMartrixPosY() return self.m_Matrix_y end
function StarSprite:SetStarTag(tag) self.m_tag = tag end
function StarSprite:SetStarScale(scalex,scaley) self:setScaleX(scalex) self:setScaleY(scaley) end
|
请发表评论