找回密码
 点一下
查看: 1800|回复: 2

YDWE存档系统问题

[复制链接]
发表于 2012-5-29 17:36:31 | 显示全部楼层 |阅读模式
Save
    事件
    条件
    动作
        设置 Hero[((触发玩家) 的玩家索引号)] = ((属于 (触发玩家) 并满足 (((匹配单位) 是 英雄) 等于 TRUE) 的所有单位) 中第一个单位)
        设置 filename = (为(触发玩家)在『YDWE』下,获取索引为[循环整数A [R]]的存档名)
        如果(所有的条件成立) 则运行 (Then - 动作) 否则运行 (Else - 动作)
            If - 条件
                filename 等于 <null>
            Then - 动作
                设置 filename = (save + (转换 循环整数A [R] 为字符串))
                设置 filename = ((Hero[((触发玩家) 的玩家索引号)] 的名字) + filename)
                存档<YDWE> - 为(触发玩家)在『YDWE』下,将〖filename〗的索引设置为→[循环整数A [R]]
            Else - 动作
        存档<YDWE> - 为(触发玩家)添加 ※单位ID,在当前存档[1]上,添加┠(显示<(Hero[((触发玩家) 的玩家索引号)] 的类型)>为整数)┨
        存档<YDWE> - 为(触发玩家)添加 ※物品,在当前存档[2]上,添加┠(显示<((Hero[((触发玩家) 的玩家索引号)] 物品栏第 0 格的物品) 的类型)>为整数)┨
        存档<YDWE> - 为(触发玩家)添加 ※物品,在当前存档[3]上,添加┠(显示<((Hero[((触发玩家) 的玩家索引号)] 物品栏第 1 格的物品) 的类型)>为整数)┨
        存档<YDWE> - 为(触发玩家)添加 ※物品,在当前存档[4]上,添加┠(显示<((Hero[((触发玩家) 的玩家索引号)] 物品栏第 2 格的物品) 的类型)>为整数)┨
        存档<YDWE> - 为(触发玩家)添加 ※物品,在当前存档[5]上,添加┠(显示<((Hero[((触发玩家) 的玩家索引号)] 物品栏第 3 格的物品) 的类型)>为整数)┨
        存档<YDWE> - 为(触发玩家)添加 ※物品,在当前存档[6]上,添加┠(显示<((Hero[((触发玩家) 的玩家索引号)] 物品栏第 4 格的物品) 的类型)>为整数)┨
        存档<YDWE> - 为(触发玩家)添加 ※物品,在当前存档[7]上,添加┠(显示<((Hero[((触发玩家) 的玩家索引号)] 物品栏第 5 格的物品) 的类型)>为整数)┨
        存档<YDWE> - 为(触发玩家)添加 ※力量,在当前存档[8]上,添加┠(力量 对 ((属于 (触发玩家) 并满足 (((匹配单位) 是 英雄) 等于 TRUE) 的所有单位) 中第一个单位) (不包括 加成))┨
        存档<YDWE> - 为(触发玩家)添加 ※敏捷,在当前存档[9]上,添加┠(敏捷 对 ((属于 (触发玩家) 并满足 (((匹配单位) 是 英雄) 等于 TRUE) 的所有单位) 中第一个单位) (不包括 加成))┨
        存档<YDWE> - 为(触发玩家)添加 ※智力,在当前存档[10]上,添加┠(智力 对 ((属于 (触发玩家) 并满足 (((匹配单位) 是 英雄) 等于 TRUE) 的所有单位) 中第一个单位) (不包括 加成))┨
        存档<YDWE> - 为(触发玩家)添加 ※经验,在当前存档[11]上,添加┠(((属于 (触发玩家) 并满足 (((匹配单位) 是 英雄) 等于 TRUE) 的所有单位) 中第一个单位) 的经验值)┨
        存档<YDWE> - 为(触发玩家)添加 ※金钱,在当前存档[12]上,添加┠((触发玩家) 现有黄金)┨
        存档<YDWE> - 为(触发玩家)添加 ※木材,在当前存档[13]上,添加┠((触发玩家) 现有木材)┨
        存档<YDWE> - 为(触发玩家)在『YDWE』〖(截取 filename 的 10 - (filename的长度) 字节部分)〗下保存存档,该存档含有[13]个数据项



Load
    事件
    条件
    动作
        游戏 - 显示Debug信息: (|cFF00FF00玩家 + ((转换 ((触发玩家) 的玩家索引号) 为字符串) + 开始读档。。。|r))
        设置 filename = (为(触发玩家)在『YDWE』下,获取索引为[循环整数A [R]]的存档名)
        存档<YDWE> - 为(触发玩家)从『YDWE』〖(截取 filename 的 10 - (filename的长度) 字节部分)〗上读取存档,该存档含有[13]个数据项
        如果(所有的条件成立) 则运行 (Then - 动作) 否则运行 (Else - 动作)
            If - 条件
                最后读取的存档为有效 <YDWE> 等于 TRUE
            Then - 动作
                单位组 - 选取 (属于 (触发玩家) 的所有单位) 内所有单位 (单位 - 删除 (选取单位))
                游戏 - 显示Debug信息: (|cFF00FF00玩家 + ((转换 ((触发玩家) 的玩家索引号) 为字符串) + 读档完成!|r))
                设置 Hero[((触发玩家) 的玩家索引号)] = (新建 (触发玩家) 的 (转换 (从(触发玩家)获取 ※单位ID,从当前存档[1]上获取) 为单位Id) 在(0.00,300.00),面向角度:0 度)
                单位 - 立即移动 Hero[((触发玩家) 的玩家索引号)] 到 (矩形区域 103 <预设> 的中心点)
                英雄 - 设置 Hero[((触发玩家) 的玩家索引号)] 的力量为 (从(触发玩家)获取 ※力量,从当前存档[8]上获取) ,(允许永久奖励)
                英雄 - 设置 Hero[((触发玩家) 的玩家索引号)] 的敏捷为 (从(触发玩家)获取 ※敏捷,从当前存档[9]上获取) ,(允许永久奖励)
                英雄 - 设置 Hero[((触发玩家) 的玩家索引号)] 的智力为 (从(触发玩家)获取 ※智力,从当前存档[10]上获取) ,(允许永久奖励)
                英雄 - 设置 Hero[((触发玩家) 的玩家索引号)] 的经验值为 (从(触发玩家)获取 ※经验,从当前存档[11]上获取) , 隐藏 升级动画
                玩家 - 设置 (触发玩家) 的 现有黄金 为 (从(触发玩家)获取 ※金钱,从当前存档[12]上获取)
                玩家 - 设置 (触发玩家) 的 现有木材 为 (从(触发玩家)获取 ※木材,从当前存档[13]上获取)
                循环动作[循环整数B]从 0 到 5, 运行 (Loop - 动作)
                    Loop - 动作
                        英雄 - 给予 Hero[((触发玩家) 的玩家索引号)] (转换 (从(触发玩家)获取 ※物品,从当前存档[(循环整数B [R] + 2)]上获取) 为物品Id) 并放在物品栏# 循环整数B [R]
            Else - 动作
                游戏 - 显示Debug信息: (|cFFFF0000玩家 + ((转换 ((触发玩家) 的玩家索引号) 为字符串) + 读档失败!|r))
以上两个是我仿照ydwe教程图做的,但为什么读取时只能读出第一个物品呢?
发表于 2012-5-29 22:36:51 | 显示全部楼层
好长..
  表示不知道楼主要搞什么...
  能不用YDWE吗?
  希瓦做了个储存系统...
回复

使用道具 举报

 楼主| 发表于 2012-5-29 22:57:04 | 显示全部楼层
他/她?的我看过,但是只能储存3个属性和经验,不能存物品,另外我不懂jass,我把循环整数去掉了,用单独的物品id逐个记录试了一下,可以成功记录和读取物品了。非常谢谢你的回答,不过希瓦的那个我真的是不会记录物品。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-12-24 20:30 , Processed in 0.277751 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表