Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/potato47/jump
微信跳一跳复刻 CocosCreator + Typescript 在线试玩 https://potato47.github.io/game/jump/
https://github.com/potato47/jump
cocos cocos-creator game typescript
Last synced: 9 days ago
JSON representation
微信跳一跳复刻 CocosCreator + Typescript 在线试玩 https://potato47.github.io/game/jump/
- Host: GitHub
- URL: https://github.com/potato47/jump
- Owner: potato47
- Created: 2017-12-28T13:58:15.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2020-10-19T06:32:01.000Z (about 4 years ago)
- Last Synced: 2024-08-01T03:14:24.590Z (3 months ago)
- Topics: cocos, cocos-creator, game, typescript
- Language: TypeScript
- Homepage:
- Size: 7.43 MB
- Stars: 153
- Watchers: 8
- Forks: 55
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-cocos-creator - 源码
- awesome-github-star - jump
README
# jump
微信跳一跳复刻 CocosCreator + Typescript 在线试玩 https://potato47.github.io/game/jump/# 简单讲两句
说一下核心逻辑
一开始我做的时候想用物理引擎,或者简单的用一下碰撞组件,后来发现很麻烦,不好控制落点
多次观察微信跳一跳的界面发现了一个规律:
人物每次跳跃落地都是固定的几个点,如果把跳跃的方块看做九宫格的正方形,那么落点一共可以分为五个,也就是上下左右中
一个非常简便的方法就出来了:
不需要人物落地之后再判断是否跳到方块上
人物跳跃之前就根据跳跃距离(跳跃距离根据蓄力时间得出),算出人物跳跃后距离目标方块哪个点(上下左右中)最近,直接让人物执行一个固定距离的跳跃动作就可以了,完全不需要物理引擎和碰撞系统,每个落点都是预设好的
当然要设定一个差值,当大于这个差值时,就代表跳到了方块外面
---
我还写了一个2d横版的跳一跳,感兴趣的可以看我另一个小游戏集合项目 https://github.com/potato47/so-many-games