当前位置:网站首页>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
边栏推荐
- Echart simple component packaging
- DOM简要
- Wchars, coding, standards and portability - wchars, encodings, standards and portability
- Declval (example of return value of guidance function)
- Unity资源顺序加载的一个方法
- Will openeuler last long
- win10系统下插入U盘有声音提示却不显示盘符
- Markdown grammar - better blogging
- Self-supervised Heterogeneous Graph Neural Network with Co-contrastive Learning 论文阅读
- Distill knowledge from the interaction model! China University of science and Technology & meituan proposed virt, which combines the efficiency of the two tower model and the performance of the intera
猜你喜欢

Tree-LSTM的一些理解以及DGL代码实现

递归的方式

Distiller les connaissances du modèle interactif! L'Université de technologie de Chine & meituan propose Virt, qui a à la fois l'efficacité du modèle à deux tours et la performance du modèle interacti

Maixll dock camera usage

Four processes of program operation

STM32按键状态机2——状态简化与增加长按功能

Implementation of queue

小程序在产业互联网中的作用

win10系统下插入U盘有声音提示却不显示盘符
![Jerry's access to additional information on the dial [article]](/img/a1/28b2a5f7c16cbcde1625a796f0d188.jpg)
Jerry's access to additional information on the dial [article]
随机推荐
Release of the sample chapter of "uncover the secrets of asp.net core 6 framework" [200 pages /5 chapters]
推荐好用的后台管理脚手架,人人开源
面向程序员的精品开源字体
Jerry's watch deletes the existing dial file [chapter]
30 分钟看懂 PCA 主成分分析
Declval of template in generic programming
CSRF漏洞分析
Coco2017 dataset usage (brief introduction)
std::true_type和std::false_type
44所高校入选!分布式智能计算项目名单公示
复现Thinkphp 2.x 任意代码执行漏洞
1700C - Helping the Nature
Shangsilicon Valley JUC high concurrency programming learning notes (3) multi thread lock
[the 300th weekly match of leetcode]
atcoder它A Mountaineer
d绑定函数
30 minutes to understand PCA principal component analysis
C language exchanges two numbers through pointers
Penetration test information collection - CDN bypass
Markdown syntax for document editing (typera)