[闲聊] 20151112修改事项

楼主: laechan (挥泪斩马云)   2015-11-12 11:53:53
今天依旧一堆测项,明天也是。后天星期六加班倒是闲闲的,
我打算星期六排一个需要长时间 coding 的项目,可能用来写
战役系统,是以这两天我会先贴一篇我规划的大致架构做为依
循,并贴几个注意事项。
这两天我也打算印出 instance 的相关档案,我打算这礼拜回
老家时有空就啃一下档案内容,看看 bug 在哪。(确定是有的)
instance 的范围大概是:
/cmds/std/_instance.c
/std/new_ob/instance_room.c
/std/new_ob/instance/intance.h
/std/new_ob/instance/intance_ob.c
/std/new_ob/instance/intance_rooms.c
/std/new_ob/instance/laechan/001.c // 以实际区域做为副本区域
/std/new_ob/instance/laechan/005.c // 以地图生成副本虚拟区域
/std/new_ob/instance/laechan/003.c // 以实际区域房间为底,但路线依据地图
/std/new_ob/instance/laechan/004.c // 多层区域副本
等我复习完我写的复本,再建 006.c 测试副本A完成后马上接
去副本B的设定,007.c 则测试 quest 与 instance 的结合,
透过 questing 函数。
一、指令 ob 修改读取方式
/cmds/std/_ob.c 备份为 ob.20151112
主要取消 static object vobjs_d 的宣告及使用,改为以全域函数
questing("vobjs",... 来做相关资料的读取。
不过从这次的修改可发现两件事
1.假设要一次读取多笔资料时,最好的读取方式就是 query_array,
把该虚拟物品的资料一次读过来存成 mixed,就可以从阵列里抽出
想要的资料(而非透过多行的 questing 去 get_xxx)
2.相同的概念在 instance 也找得到例如 instance_data("all") 读
到的就是副本的所有资料(并存成 mapping 资料回传)。
因此以后以 questing 试图存取一物件数据库时,都应考量设定一参
数(如前面的 query_array),让它可用来回传想要的所有资料。
二、

Links booklink

Contact Us: admin [ a t ] ucptt.com