【cocos2dx开发技巧5】脚本lua的使用--代码集锦
2013-05-05 23:24
483 查看
仿照“我叫MT”的控件
代码如下:
按钮控件
toluafix, CCNode::registerScriptHandler, toluafix_isfunction
代码如下:
local function createBanner() local layerFarm = CCNode:create() local cache = CCSpriteFrameCache:sharedSpriteFrameCache() cache:addSpriteFramesWithFile("pic.plist") local spritebatch = CCSpriteBatchNode:create("pic.png") layerFarm:addChild(spritebatch) local bg = CCSprite:createWithSpriteFrameName("bg.png") spritebatch:addChild(bg) cclog("The size of bg is: %0.2f, %0.2f", bg:getContentSize().width, bg:getContentSize().height) local px = bg:getContentSize().width / 2; local py = bg:getContentSize().height /2; local head01 = CCSprite:createWithSpriteFrameName("head01.png") spritebatch:addChild(head01) head01:setAnchorPoint(ccp(0, 0.5)); head01:setPosition(-px, 0); local lv = CCSprite:createWithSpriteFrameName("lv.png") spritebatch:addChild(lv); lv:setPosition(-px + 10, -py + 10); lv:setAnchorPoint(ccp(0, 0)); local name = CCLabelTTF:create("yyyy", "Arial", 24) layerFarm:addChild(name); name:setAnchorPoint(ccp(0, 0)); name:setPosition(-135, 5); local hp = CCLabelTTF:create("7569", "Arial", 24) layerFarm:addChild( hp); hp:setAnchorPoint(ccp(0, 0)); hp:setPosition(-140, -35); local zhandou = CCLabelTTF:create("2334", "Arial", 24) layerFarm:addChild( zhandou); zhandou:setAnchorPoint(ccp(0, 0)); zhandou:setPosition(-25, -35); return layerFarm; end local function createLayerFarm() local layerFarm = createBanner() layerFarm:setScale(0.8); layerFarm:setPosition(origin.x + visibleSize.width / 2 , origin.y + visibleSize.height / 2) return layerFarm; end
按钮控件
local function createBtn(name, callback) local pMainBtn = CCMenuItemSprite:create( CCSprite:createWithSpriteFrameName("d_"..name..".png"), CCSprite:createWithSpriteFrameName("d_"..name.."_s.png"), CCSprite:createWithSpriteFrameName("d_"..name.."_s.png")); pMainBtn:registerScriptTapHandler(callback) pMainBtn:setAnchorPoint(ccp(0, 0)) return pMainBtn; end local function createButtoms() local node = CCNode:create(); local cache = CCSpriteFrameCache:sharedSpriteFrameCache() cache:addSpriteFramesWithFile("images/gTopper.plist", "images/gTopper.png"); local function cbHome() cclog("home") end local function cbFuben() cclog("cbFuben") end local function cbZhandou() cclog("cbZhandou") end local function cbStore() cclog("cbStore") end local function cbFriends() cclog("cbFriends") end local function cbGonglve() cclog("cbGonglve") end local bHome = createBtn("home", cbHome); local bFuben = createBtn("fuben", cbFuben); local bZhandou = createBtn("zhandou", cbZhandou); local bStore = createBtn("store", cbStore); local bFriends = createBtn("friends", cbFriends); local bGonglve = createBtn("gonglve", cbGonglve); local menu = CCMenu:create() menu:addChild(bHome) menu:addChild(bFuben) menu:addChild(bZhandou) menu:addChild(bStore) menu:addChild(bFriends) menu:addChild(bGonglve) local size = bHome:getContentSize().width; local gap = 8 bHome:setPosition(-3*(size + gap), 0) bFuben:setPosition(-2*(size + gap), 0) bZhandou:setPosition(-1*(size + gap), 0) bStore:setPosition(0*(size + gap), 0) bFriends:setPosition(1*(size + gap), 0) bGonglve:setPosition(2*(size + gap), 0) menu:setPosition( 0, origin.y + visibleSize.height / 2) node:addChild(menu) return node end
toluafix, CCNode::registerScriptHandler, toluafix_isfunction
相关文章推荐
- 【cocos2dx开发技巧6】脚本lua的使用--开发环境的配置
- 【cocos2dx开发技巧7】脚本lua的使用--集成cocosbuilder
- 【cocos2dx开发技巧7】脚本lua的使用--集成cocosbuilder
- 在Cocos2dX游戏中使用Lua脚本进行游戏开发(基础篇)
- 【COCOS2DX-LUA 脚本开发之四】使用tolua++编译pkg,从而创建自定义类让Lua脚本使用
- 【COCOS2DX-LUA 脚本开发之一】在Cocos2dX游戏中使用Lua脚本进行游戏开发(基础篇)并介绍脚本在游戏中详细用途!
- 【Cocos2dX(2.x)_Lua开发之三】★重要必看篇★在Lua中使用自定义精灵(Lua脚本与自创建类之间的访问)及Lua基础讲解
- 【COCOS2DX-LUA 脚本开发之九】使用cocos2dx-LuaProxy便捷Lua项目快速使用cocos2dx引擎extensions扩展包
- 【COCOS2DX-LUA 脚本开发之一】在Cocos2dX游戏中使用Lua脚本进行游戏开发(基础篇)并介绍脚本在游戏中详细用途!
- 转载一个简单的lua展示【COCOS2DX-LUA 脚本开发之一】LUA语言基础在Cocos2dX游戏中使用Lua脚本进行游戏开发(基础篇)并介绍脚本在游戏中详细用途!
- 【COCOS2DX-LUA 脚本开发之五】Lua 使用OOP(面对对象思想编程),免Binding创建自定义lua类
- 【COCOS2DX-LUA 脚本开发之十】使用Lua CJSON库进行encode与decode操作完成对Json数据转化
- 【COCOS2DX-LUA 脚本开发之六】利用Lua强转函数解决使用CCNode报错或无法正常使用以及简单介绍 quick-cocos2d-x 与 OpenQuick 两款Lua免费开源框架
- 【COCOS2DX-LUA 脚本开发之九】使用cocos2dx-LuaProxy便捷Lua项目快速使用cocos2dx引擎extensions扩展包
- 【Cocos2dX(2.x)_Lua开发之三】★重要必看篇★在Lua中使用自定义精灵(Lua脚本与自创建类之间的访问)及Lua基础讲解
- 【COCOS2DX-LUA 脚本开发之五】Lua 使用OOP免Binding创建自定义lua类
- 【COCOS2DX-LUA 脚本开发之九】使用cocos2dx-LuaProxy便捷Lua项目快速使用cocos2dx引擎extensions扩展包
- 【COCOS2DX-LUA 脚本开发之十】使用Lua CJSON库进行encode与decode操作完成对Json数据转化
- 【COCOS2DX-LUA 脚本开发之一】LUA语言基础在Cocos2dX游戏中使用Lua脚本进行游戏开发(基础篇)并介绍脚本在游戏中详细用途!
- 【COCOS2DX-LUA 脚本开发之一】LUA语言基础在Cocos2dX游戏中使用Lua脚本进行游戏开发(基础篇)并介绍脚本在游戏中详细用途