利用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
原文:http://www.cnblogs.com/lh92lxm/p/3565049.html