⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 px_ls_item.h

📁 MMORPG游戏服务器端架构及函数
💻 H
字号:
#pragma	  once

/* must been first include begin */
#include "..\ProjectX_Common\ProjectX_Copyright.h"
#include "..\ProjectX_Common\ProjectX_Common.h"
/* must been first include end */

/* std and common include */
#include <windows.h>
#include <stdio.h>
#include <stdlib.h>


#include "px_ls_item_defence.h"
#include "px_ls_item_weapon.h"
#include "px_ls_item_staff.h"

//传送门
typedef struct tagScroll_Door {
	int sessionid;
}SCROLL_DOOR, * LPPX_LS_SCROLL_DOOR;

//传送门键
typedef struct tagScroll_Door_Key {
	byte state;
	SCROLL_DOOR * pscroll_door;
}SCROLL_DOOR_KEY, * LPSCROLL_DOOR_KEY;

//丢弃在地面上的道具
typedef struct tagItem_Ground {
	int item_int;
}ITEM_GROUND, * LPITEM_GROUND;

//丢弃在地面上的道具键
typedef struct tagItem_Ground_Key {
	byte state;
	ITEM_GROUND * pitem_ground;
}ITEM_GROUND_KEY, * LPITEM_GROUND_KEY;

//尸体内附属的道具
typedef struct tagItem_Corpus {
	int item_int;
	struct tagItem_Corpus * pNext;
}ITEM_CORPUS, * LPITEM_CORPUS;

typedef struct tagItem_Inventory {
	int item_int;	//道具值		若不为0,则由x和y来确定次道具的真实位置,若为0,则表示此位置为空
	byte src_x;		//道具索引x
	byte src_y;		//道具索引y
}ITEM_INVENTORY, * LPITEM_INVENTORY;
/************************************************************************
以下为对各种道具的具体编码格式及其内容说明:

说明:关于游戏中可以出现的道具及其相关介绍
1	:防具(头盔+衣服+内衣+眼罩+护腿+护手+靴子+盾牌+披风)
2	:饰品(戒指+项链+护身符)
3	:武器(斧头+弓箭+弩箭+匕首+钉头锤+矛+枪+棍棒+刀+剑+法杖+权杖+亡灵荷叶+采矿工具+收集草药工具+剥皮工具)
4	:恢复类药剂(回复HP+回复Mana+回复精力+回复SK+回复HP&Mana)
5	:解除某一状态药剂(解除冰冻效果+解除中毒效果+解除失明效果+解除伤口撕裂效果+解除诅咒效果+解除攻击反噬效果+解除麻痹效果)
6	:任务物品(各种任务物品,此类物品,玩家不能佩戴使用)
7	:消耗性物品(弓箭+弩箭+道士用的符文+传送卷轴+增益性物品+反增益性物品+变身物品)
8	:宠物(小木马+小鸡+高头大马+机械兽+小兔+小飞龙+翼龙)
9	:各种技能书+技能石
10	:建立战盟需要的物品+建立血盟需要的物品+攻城需要的物品
11	:特殊物品(如服务器单方举行的各种活动物品,在此版本中暂不提供+缴费物品)
12	:翅膀
13	:合成物品时需要的宝石等物品
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
各种物品共使用1*sizeof(int)即4bytes表示
其中各个bit位编码格式及其指代内容位:
[1111] 1111 1111 1111 1111 1111 1111 1111]
31-26 total 4bits 表示此道具的大类标志,如0001表示为防具,0002表示为武器等,参考具体实现
25-23 total 3bits 表示此道具的等级,即加几
22-20 total 3bits 表示此道具的附加等级,即追几,具体数值为此数值*2
19-N  total (19-N+1)bits 表示此道具在所属大类的情况下,其小类标志,具体参考具体实现
N-0	  total (N-0+1)bits 表示此道具的可以附加的属性,具体参考此类道具可以具有的能力,及具体实现
约定 : (0 < N < 19 :math comment)
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

其中各种物品(但不包括一定比例特殊物品)的等级有:
| 普通等级物品
| 暗色等级物品
| 卓越等级物品
| 套装等级物品
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
各种防具可以具有的能力为:
|头盔	:防御+抗击打能力								+[物理抗击+冰系抗击+火系抗击+毒系抗击+电系抗击+魔系抗击]中的一种
|衣服	:防御+增强防御+快速打击回复						+[物理抗击+冰系抗击+火系抗击+毒系抗击+电系抗击+魔系抗击]中的一种
|眼罩	:防御+抗失明+增加视野							+[物理抗击+冰系抗击+火系抗击+毒系抗击+电系抗击+魔系抗击]中的一种
|内衣	:防御+增强体质能力								+[物理抗击+冰系抗击+火系抗击+毒系抗击+电系抗击+魔系抗击]中的一种
|护腿	:防御+快速打击回复								+[物理抗击+冰系抗击+火系抗击+毒系抗击+电系抗击+魔系抗击]中的一种
|护手	:防御+提高快速施法能力+水中移动速度+格挡速度	+[物理抗击+冰系抗击+火系抗击+毒系抗击+电系抗击+魔系抗击]中的一种
|靴子	:防御+提高陆地或者沼泽地带的移动速度			+[物理抗击+冰系抗击+火系抗击+毒系抗击+电系抗击+魔系抗击]中的一种
|披风	:防御+增强防御+快速打击回复						+[物理抗击+冰系抗击+火系抗击+毒系抗击+电系抗击+魔系抗击]中的两种
|盾牌	:防御+格挡速度+格挡几率+盾击成功几率			+五个抗击加成
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
各种饰品可以具有的能力为:
|戒指	:降低某一种状态的持续效果+提高攻击速度+[回复HP+回复Mana]中的一种
|项链	:降低某一中状态的持续效果+提高攻击准确率+[回复HP+回复Mana]中的一种
|手镯	:防御+[施法速度+攻击速度]中的一种
|护身符	:防御+快速打击回复
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
************************************************************************/
/*
# 序号+名称+等级需求+力量需求+敏捷需求+智力需求+统率需求+防御
# +统率增加+力量增加+敏捷增加+智力增加
# +套装数量+性别需求+人类+野蛮人+法师+精灵+弓弩手+道士+亡灵+匠士+骑士+空间大小x+空间大小y+重量+出售金钱
# 视野+眩晕时间减少+躲避几率+移动速度加成+游泳速度+体重减少+负重增加+空中移动速度+hp增加+mana增加+sp增加+伤害减少
# hp恢复+mana恢复+sp恢复+死亡传送+传送几率+耗费金钱
*/
//# 序号+名称+等级需求+力量需求+敏捷需求+智力需求+统率需求+防御+fhr+套装数量
//+性别需求+人类+野蛮人+法师+精灵+弓弩手+道士+亡灵+匠士+骑士+空间大小x+空间大小y+重量+出售金钱
/************************************************************************
以下为定义各种道具的基础属性,非其本身附加属性
头盔	:统率增加+力量增加+敏捷增加+智力增加
眼罩	:视野+眩晕时间减少
衣服	:快速打击恢复
护腿	:躲避几率(远程攻击)+快速移动能力加成
靴子	:陆地移动速度
腰带	:物理伤害减少+元素伤害减少+魔法伤害减少
护手	:游泳速度+施放速度(物理+元素+魔法)
披风	:全身体重减少
内衣	:负重增加
盾牌	:格挡速度+格挡几率
翅膀	:空中速度+空中速度增加+攻击力加成
守护	:hp增加+mana增加+sp增加+伤害减少
项链	:12中frame增加
戒指	:6种抵抗增加+hp+mana+sp恢复速度
护身符	:死亡传送
************************************************************************/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -