当前位置:网站首页>Cocos2d Lua smaller and smaller sample memory game
Cocos2d Lua smaller and smaller sample memory game
2022-07-06 18:25:00 【Full stack programmer webmaster】
Hello everyone , I meet you again , I'm the king of the whole stack .
1. Introduction to the game
One ” memory ” Class game . You fight against the computer , Whose turn is it , Who turns two cards , Suppose two cards are the same . Just eliminate these two cards , have to 2 branch , Can continue to flip , Suppose two cards are different , Just another person . Until the last . Look who scores high .
Game design ideas can be seen in this article 《Cocos2d Game state machine 》
2. Lua Simple object oriented
We know Lua It's script language , Not really an object-oriented language . But object-oriented seems to make the code structure more reasonable .Javascript, Lua Can simulate object-oriented .Lua There are many ways to realize object orientation , Of course, there is no introduction here .
Simply look at inheritance Sprite Writing . Copy official .
MatchCard = class("Match",function (spriteFrameName, value)
MatchCard.value = value //-- attribute
return cc.Sprite:createWithSpriteFrameName("MatchCardBg.png")
end)
MatchCard.test= true //-- attribute
//-- One way
function MatchCard:containsTouchLocation(x,y)
local position = cc.p(self:getPosition())
local s = self:getContentSize()
local touchRect = cc.rect(-s.width / 2 + position.x, -s.height / 2 + position.y, s.width, s.height)
local b = cc.rectContainsPoint(touchRect,cc.p(x,y))
return b
end
//--new An object , Of course, this is the same as c++ The kind of different
local card = MatchCard.new()
//-- Calling method
card:containsTouchLocation()
3.Cocos Code Ide establish Lua project
My game uses Cocos Code Ide Created . Fairly smooth .API Refer to Lua-Tests That's all. .
The overall is the same . I haven't played yet Quick cocos2d-x.
4.cocos2d lua Use feeling
Use Cocos2d-x Of C++ Programming is the most comfortable , Even though C++ Grammar is hard to write . But I don't easy Encounter very strange Bug. The compilation speed is too slow , It's hard to cooperate with the planner . image Js, and Lua, You have defined some writing methods . Planning can also be written directly Js and Lua,C++ No way. . also Cocos2d-x C++ Can use the latest version number , transplant Android and IOS No problem .
also Cocos2d-x C++ I feel I can write high-quality code . also VS2012 Very easy to use .
Lua,JS It's all script language , It is used to develop games very fast .
There is no need to compile . Just get used to it C++ That kind of disciplined object-oriented , Write Lua,JS Object orientation is always weird .Debug Sometimes relative C++ Relatively difficult .cocos2d JS Or use it WebStorm Writing is cool .Cocos Code Ide Follow VS2012 and WebStorm There is still a gap , Some aspects are integrated Cocos Game framework for , So some aspects are easier to use .
5. Dynamic diagram and project source code download
I am right. Lua Less use , I feel the writing is poor , Too many global variables . Project download address :
exe Can directly execute in /runtime/win32/MatchGame.exe, I won't support it XP,Win7 Should be able to .
http://www.waitingfy.com/archives/1289
Copyright notice : This article is an original blog article , Blog , Without consent , Shall not be reproduced .
Publisher : Full stack programmer stack length , Reprint please indicate the source :https://javaforall.cn/117397.html Link to the original text :https://javaforall.cn
边栏推荐
- Redis的五种数据结构
- declval(指导函数返回值范例)
- Excellent open source fonts for programmers
- TCP packet sticking problem
- Tree-LSTM的一些理解以及DGL代码实现
- Cobra 快速入门 - 专为命令行程序而生
- J'aimerais dire quelques mots de plus sur ce problème de communication...
- Cocos2d Lua 越来越小样本 内存游戏
- STM32+ESP8266+MQTT协议连接OneNet物联网平台
- Virtual machine VirtualBox and vagrant installation
猜你喜欢
Introduction and case analysis of Prophet model
【中山大学】考研初试复试资料分享
Grafana 9.0 正式发布!堪称最强!
Jerry's updated equipment resource document [chapter]
Ms-tct: INRIA & SBU proposed a multi-scale time transformer for motion detection. The effect is SOTA! Open source! (CVPR2022)...
MS-TCT:Inria&SBU提出用于动作检测的多尺度时间Transformer,效果SOTA!已开源!(CVPR2022)...
C language exchanges two numbers through pointers
Declval (example of return value of guidance function)
虚拟机VirtualBox和Vagrant安装
30 minutes to understand PCA principal component analysis
随机推荐
The third season of Baidu online AI competition is coming in midsummer, looking for you who love AI!
Compilation Principle -- C language implementation of prediction table
D binding function
MSF横向之MSF端口转发+路由表+SOCKS5+proxychains
Shangsilicon Valley JUC high concurrency programming learning notes (3) multi thread lock
echart简单组件封装
Declval (example of return value of guidance function)
MSF horizontal MSF port forwarding + routing table +socks5+proxychains
【LeetCode第 300 场周赛】
UFIDA OA vulnerability learning - ncfindweb directory traversal vulnerability
C language exchanges two numbers through pointers
Alibaba cloud international ECS cannot log in to the pagoda panel console
30 minutes to understand PCA principal component analysis
STM32 key state machine 2 - state simplification and long press function addition
Why does wechat use SQLite to save chat records?
ADB common commands
Reprint: defect detection technology of industrial components based on deep learning
STM32+HC05串口蓝牙设计简易的蓝牙音箱
Codeforces Round #803 (Div. 2)
最新财报发布+天猫618双榜第一,耐克蓄力领跑下个50年