Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Checkpoint存档方块 #238

Closed
LiXizhi opened this issue Dec 6, 2017 · 1 comment
Closed

Checkpoint存档方块 #238

LiXizhi opened this issue Dec 6, 2017 · 1 comment
Assignees
Labels

Comments

@LiXizhi
Copy link
Owner

LiXizhi commented Dec 6, 2017

设计文档:

http://keepwork.com/lixizhi/note/checkpoint%20block

/checkpoint list

读取[worlddir]/mod/checkpoint.xml, UI列出所有的关卡, 未来还可以加入附加属性, 例如
/checkpoint list style=imagelist

存档列表checkpoint.xml 例如:

- name: checkpoint1
  defaultpos: 10000 5 100000 
  imagefilename: ""
  onloadcommand: ""
- name: checkpoint2
  defaultpos: 20000 15 100000 
  imagefilename: "textures/checkpoint1.png"  
  onloadcommand: ""

/checkpoint save [name] [x y z] [-force]

保存关卡。 关卡名字,以及位置信息。
用户数据放在 temp/saves/[username]/[worldname]/checkpoint.xml

@param -force: 如果之前已经存盘过,强制覆盖

checkpoint.xml 例如:

- name: checkpoint1
  pos: 10000 5 100000 
  imagefilename: "temp/saves/[username]/[worldname]/autosave1.jpg"
  player_items: {存盘时的人物背包信息}

注意我们允许一个checkpoint name对应多个场景中的checkpoint blocks.

/checkpoint load [name]

根据 [worlddir]/mod/checkpoint.xmltemp/saves/[username]/[worldname]/checkpoint.xml 做如下工作

  • 恢复 checkpoint1.player_items 的用户物品
  • 将人物传送到 checkpoint1.pos 的位置
  • 执行checkpoint1.onloadcommand的内容
@LiXizhi LiXizhi self-assigned this Dec 6, 2017
@LiXizhi LiXizhi added the 需求 label Dec 6, 2017
@LiXizhi
Copy link
Owner Author

LiXizhi commented Dec 6, 2017

image
image

@LiXizhi LiXizhi closed this as completed Jan 7, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant