机战仓库系统.docx
- 文档编号:23604689
- 上传时间:2023-05-18
- 格式:DOCX
- 页数:14
- 大小:311.04KB
机战仓库系统.docx
《机战仓库系统.docx》由会员分享,可在线阅读,更多相关《机战仓库系统.docx(14页珍藏版)》请在冰豆网上搜索。
机战仓库系统
仓库系统
Version1.01
系统文档
v1.01更新说明
修改仓库物品的占格数,则只占一格变成占多个格子,即占格数与在储物货中的占格数是一样的。
1设计需求2
2设计目标2
3概要描述2
4基本功能部份2
4.1仓库的基本设置2
4.2激活仓库界面4
4.3存放物品基本操作4
4.4仓库中取出物品的基本操作5
4.5界面操作的一些问题7
4.6存取金钱部分7
4.6.1存取钱界面7
4.6.2存钱操作8
4.6.3取钱操作9
5服务功能10
5.1仓库锁10
5.1.1设计目的10
5.1.2保护方式10
5.1.3实现方式10
5.2公用仓库11
1设计需求
网络游戏中玩家有物品存储的需求,提供仓库系统给玩家存储一些游戏物品,会增加玩家的忠诚度。
2设计目标
提供玩家存储物品功能,操作和物品系统要求统一、同时符合大部分玩家操作习惯,直观、简单、易懂。
3概要描述
机战仓库系统,将分成下面几个部分制作,为:
(1)基本功能部分
定义:
完成存储全过程的基本功能部分,包含最基本的和必须的操作
(2)服务功能部分
定义:
一些增强的功能部分,包括公用仓库、仓库锁等功能
4基本功能部份
4.1仓库的基本设置
(1)仓库内的东西只有自己可以浏览和存取。
(2)user表中有记录仓库等级,初始的仓库等级是一级。
每级的格子数和排列规格见下表:
(以下数值为暂定数据)
级别
格子数
规则(横向格子数*纵向格子数)
1
40
10*4
2
80
10*8
3
120
10*12
4
160
10*16
(3)仓库格子除了通过人物的仓库等级读取外,还受到仓库NPC的data3限制。
Data3默认填0,只需要通过仓库等级读取格子数,格子数不受data3限制;但若某仓库NPC的data3数值大于0,则不论玩家仓库等级如何,该仓库都会有data3所记录的数值的格子数。
例如:
玩家仓库等级2,当仓库NPC1的data3填0时,该仓库可以有40个格子;若仓库data3数值为60,则玩家可以有60个格子,不论仓库等级如何;但若data3为20,即便玩家仓库等级有2,该仓库也最多只能有20个格子。
(格子的规格同上文表格所述)
(4)策划在填写data3数值时,数值必须是5的倍数,否则程序在加载NPC表时,强制将值设为0。
(5)在货舱中无论占多少格的物品,在仓库中都只占一格空间,一格代表一个位置。
物品放在仓库中后读取的是占一格的物品小图片,采用现有的ItemMinIcon.ani读取方式。
(修改:
物品在货舱中占多少格,放置在仓库中依旧占多少格,其操作同储物货中的操作。
请参考储物舱中的物品选择,旋转,放置添加,整理等部分描述。
)
(6)仓库界面可多页显示,一页上最多显示40个格子(暂定)。
当打开超过40格的仓库时,界面上会出现上下的翻页按钮,如图:
,每次点击上按钮,向上翻一页,点击下按钮,向下翻一页。
(7)
若仓库是多页的,当前页的下页有放置物品,则下翻页按钮会亮起,以提示玩家,如图:
;或当前页的上页有放置物品,则上翻页钮亮起。
如果上页下页都有物品,则两个按钮都亮起。
(8)仓库中显示物品和玩家的存款数量。
(9)每个仓库的物品是独立的,存款是共通的。
(10)物品在货舱中有什么样的显示光效,放到仓库中时,就以什么光效显示。
(11)鼠标移到仓库中的物品,显示的物品浮游信息和物品在货舱中的是一样的,同样读取itemtype.ini。
4.2激活仓库界面
玩家以点击npc等方式同时打开货舱界面和仓库界面,通过货舱和仓库栏之间物品拖动完成存储和取出的过程。
详细描述:
通过对选中状态的仓库NPC点击鼠标左键,打开仓库界面,界面编号N。
货舱界面和仓库界面会同时打开。
基本形式如下图:
左界面为仓库界面,右方为货舱界面(请根据具体需求设计机战仓库界面,左右位置可调整)
4.3存放物品基本操作
(1)点击货舱中物品图标点击鼠标左键,拾起物品,(修改:
统一为左键点取物品时,物品图标向右上偏移各五个象素点),背包中物品图标消失,鼠标指针变为物品在货舱中显示图标,即物品被原形拾起。
(物品在货舱中的操作请参考背包系统中的描述内容。
包括物品的选取,旋转,整理等。
)
(2)移动物品图标至仓库界面,对仓库界面中物品栏的任意位置点击鼠标左键,物品被放进仓库中,且在仓库中进行自动排序的存放,即:
无论鼠标在哪个位置上点击,只要仓库有空间,都可存放成功,且自动放在当前所有物品的最后一位。
存放成功后,鼠标指针恢复,同时仓库中物品栏内显示物品的一格小图标。
(3)物品存放成功后,货舱中其它物品的摆放位置和形状不受影响。
被存放进仓库的物品原来在货舱的位置就被空了出来。
(4)若仓库空间已满,则物品无法被拖进仓库中。
系统返回提示:
仓库空间已满,无法增加新物品存储。
玩家必须取消拖放操作,或将仓库界面关闭,或再将物品拖回货舱。
(5)将物品放回货舱的操作参见背包系统。
(6)拖动中的物品在未放入仓库前的所有操作和处理都同背包系统一致,包括人物死亡时的处理。
4.4仓库中取出物品的基本操作
(1)点击仓库中物品图标点击鼠标左键,仓库中物品小图标消失,鼠标指针变为物品的原形图标。
若物品是占多格的物品,则从仓库拾取起来时,默认以物品的方向1显示物品图片。
(2)移动物品图标至货舱界面,将物品放进货舱中,同时货舱中显示物品图标,鼠标指针恢复。
(3)在货舱中放置物品时,要正确的将物品放进可放置物品的空间内。
当拖动物品的鼠标点击货舱中的一个放置空间时,要判断以下几个因素:
a)货舱空间
物品的占格数要大于等于货舱剩余的格子数。
占格数是指物品无论如何摆放,在货舱中至少要占用的格子数。
当该条件不满足时,物品无法放进,系统提示:
货舱空间不足。
b)在剩余空间满足的情况下,进行放置物品的操作。
放置过程等同于在货舱中整理物品的放置操作。
判断条件都是一样的。
即:
当鼠标处于货舱界面时,就是在对货舱中进行操作,这部份内容参见背包系统。
(4)物品从仓库中成功取出后,必须检查放进货舱的物品的负重是否小于等级机体的剩余负重量。
如果不满足条件,要提示玩家:
机体超重,为避免影响游戏,请及时整理摆放。
(5)物品成功放下后,物品的位置就改处于货舱中的某一位置,在仓库中的图标消失。
在仓库中原来处于该物品存放位置后面的物品自动向前移动一位。
下图是A-G七个物品在仓库中的存放位置,当C物品被放进货舱或丢弃后,D自动排到C原位上,D面后面的物品也一起向前移动。
A
B
C
D
E
F
G
将C丢弃或放进货舱后的物品排列:
A
B
D
E
F
G
(6)使用鼠标右键点击仓库中的物品,物品会自动添加到货舱中。
程序以拾取物品的方式处理仓库中被右键点击的物品,使其能够被以某一形状被放置到货舱中,如果任何形状在货舱中任何位置都放不下,则提示玩家货舱空间不足,系统无法自动添加物品。
仓库中剩余物品的排列方式同step5。
(7)在采用手动拖动物品进货舱时,如果货舱放不下物品,可以关闭仓库界面或将物品重新放回仓库。
无论是关闭界面还是将拖动物品的鼠标点击在仓库中的任何空格,物品都会回到被拾取前的空位中。
4.5界面操作的一些问题
(1)仓库界面打开时,不能打开其它界面,除组队和货舱界面外。
如果打开时界面上有其它界面正在打开状态,除组队界面、交易界面和货舱界面外,其它界面都被关闭,优先显示仓库界面。
(2)打开仓库界面时,不能进行交易。
向对方发送交易请求时,请求会被系统阻止,并提示玩家:
当前状态不能交易,请关闭仓库。
而对方向自己发送交易请求时,若自己正打开仓库,也可以收到对方的交易请求,但只能取消,或者关闭仓库后点击同意交易,否则,若在仓库打开的情况下点击同意,无法打开交易界面,交易失败,系统会提示:
交易界面无法打开。
并返回请求方:
对方正忙,请稍候再试。
(3)打开仓库时,货舱要保留原货舱的全部功能,允许玩家丢弃、拾取物品,使用或者装备物品栏的物品。
操作等同于货舱原来的操作。
4.6存取金钱部分
4.6.1存取钱界面
仓库也提供存储和取出金钱的功能。
仓库界面显示物品的同时,也显示玩家的存款和游戏豆。
界面示意图如下:
界面注释:
1、金钱图标显示
2、存款数量显示
3、存储图标
4、取出图标
4.6.2存钱操作
存钱时,点击存钱按钮,弹出对话框如下,以下是范例界面,在机战中请设计成比较科技化,类似于提款机的界面。
这个可存入的金钱余额为玩家身上现存的金钱数量。
存储界面打开时,不关闭仓库界面,且无法对仓库界面进行操作。
具体操作:
(1)玩家输入金额,点击确定按钮,在以下两个条件满足的情况下,完成存储。
a)输入的金额小于等于玩家身上的金钱数量。
若超出玩家身上金钱数量,则点击确定后,输入框中的数字不消失,光标定位在最后一个数字后面。
系统提示提示“对不起,您身上没有足够数量的金钱”。
b)输入的金额和现有存款的总和不会超出仓库可存入金钱数量的上限。
若超过,则点击确定后,输入框中的数字不消失,光标定位在最后一个数字后面。
系统提示提示“对不起,您想存储的金钱数目过大,您的仓库无法容纳”。
(2)以上两条件满足,玩家身上的钱减少,存款相应增加。
存钱界面不关闭,输入栏数字清空,但光标仍停留在输入框中。
(3)在玩家输入金钱金额就已经超过仓库可存储金钱余额或身上金额数量的时候,输入框内的数字颜色从白色变成红色。
(4)输入框中只能填写阿拉伯数字的正整数。
(5)点取消关闭存钱界面
(6)输入的金钱数量和界面上显示的可存入数量的数字显示都需要使用分节号。
4.6.3取钱操作
点击取钱按钮,弹出对话框如下
这个可提取的金钱余额为玩家的存款数量。
取钱界面打开时,不关闭仓库界面,且无法对仓库界面进行操作。
具体操作:
(1)玩家输入金额,点击确定按钮,在以下两个条件满足的情况下,完成提取。
a)输入的金额小于等于玩家的存款数量。
若超出玩家身上金钱数量,则点击确定后,输入框中的数字不消失,光标定位在最后一个数字后面。
系统提示提示“对不起,您身上没有足够数量的存款”。
b)输入的金额和身上现金的总和不会超出可携带现金的上限。
若超过,则点击确定后,输入框中的数字不消失,光标定位在最后一个数字后面。
系统提示提示“对不起,您想提取的金钱数目过大,您的货舱无法容纳”。
(2)以上两条件满足,玩家存款减少,身上的金钱相应增加。
取钱界面不关闭,输入栏数字清空,但光标仍停留在输入框中。
(3)在玩家输入金钱金额就已经超过可携带现金或存款余额时,输入框内的数字颜色变成红色,或其它醒目颜色,目的是要和正确数目的金钱区分。
(4)输入框中只能填写阿拉伯数字的正整数。
(5)点取消关闭存钱界面
(6)输入的金钱数量和界面上显示的可提取的数字显示都需要使用分节号。
5服务功能
5.1仓库锁
5.1.1设计目的
保护玩家物品,让玩家在帐号密码之外,得到额外的帐号安全保障。
5.1.2保护方式
玩家可以设置一个仓库密码,该密码保存在玩家user表中。
玩家上线后第一次打开仓库时,检查玩家是否有设置仓库密码,若没有则直接打开仓库。
如果玩家设置了密码,则每次要打开开仓库时,系统都要检查玩家是否已经解开了密码,若已解开密码,则直接打开仓库。
若还没有解开密码,则弹出密码输入框,要求玩家输入密码,输入正确,关闭输入框,打开仓库,若连续三次输入错误,仓库拒绝使用,必须下线才能清除错误记录。
玩家每次上线都必须重新开启一次密码才可以使用仓库,开启一次,只要不下线,以后使用仓库将不用输密码,但一下线,开启记录将被清除。
5.1.3实现方式
仓库锁的实现机制可通过action来实现,征服中已经做到,请参考征服的做法。
以征服中的实现方式要增加以下action。
(1)ACTION_USER_DATAVAR_CHK//检测一个寄存器变量param="var(x)optdata",x支持(0-7),opt支持">,>=,==",data为整数值。
(2)ACTION_USER_DATAVAR_SET//设置一个寄存器变量,param="var(x)setdata",x支持(0-7),data为整数值
(3)ACTION_USER_STRVAR_CHK//检测一个寄存器变量,param="var(x)optstring",x支持(0-7),opt支持"==",string为字符串
(4)ACTION_USER_STRVAR_SET//设置一个寄存器变量,param="var(x)setstring",x支持(0-7),string为字符串
(5)ACTION_USER_DATAVAR_CAL//寄存器变量计算,param="var(x)optdata",x支持(0-7),opt支持"+=","-=","*=","/=","%=",data为整数值
(6)玩家属性修改的action中,增加对lock_key检测和修改
(7)增加对user表中lock_key字段的取值功能。
5.2公用仓库
(8)NPC类型中,有一种是箱子NPC,这种类型的NPC可以指定所有者类型、所有者ID。
征服和信仰中都已实现。
(9)由于这类NPC基本上都是动态NPC,所以点击后直接打开对应的仓库界面,仓库界面和个人仓库界面显示的内容和方式基本一致。
不同的是,箱子的NPC只显示存款,但不能存取金钱。
实现上可以和个人仓库做成两套界面。
(10)箱子的物品存放数量通过NPC的data3控制,不受玩家的仓库等级限制。
(11)当仓库属于个人时,任何人都可以打开查看主人放在该仓库的物品,但无法取出和存出物品,将物品拖入仓库时无法放下,系统会提示您没有这个权限。
主人的配偶可以对该仓库行使主人的所有权利。
玩家在打开别人的箱子仓库时,仓库上显示出来的存款金额是玩家自己的存款,而非主人的。
(12)当仓库是属于帮派的时候,这部份内容详见帮派系统的设计。
若帮派系统没有设计帮派仓库,也请程序预留所有者类型为帮派的仓库。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 仓库 系统