📄 px_ls_skill.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>
//技能
//以下为定义技能类型
#define SKILL_TYPE_ACTIVE_DAMAGE 1 //主动伤害
#define SKILL_TYPE_PASSIVE_DAMAGE 2 //被动伤害
#define SKILL_TYPE_RECOVERY 3 //恢复
#define SKILL_TYPE_PLUS 4 //增益
typedef struct tagSkill {
byte skill_id;
struct tagSkill * pNext;
}SKILL, * LPSKILL;
/************************************************************************
以下为角色或者类似主体可以使用的技能说明
约定:
1 技能在此ProjectX中,细分为几种类型技能(主动攻击型的,被动攻击型的,防御型的,增益型的,区域影响型的)
2 每一种技能可以同时对单一主体,也可能同时对多于一个主体,起作用
************************************************************************/
//主动技能
typedef struct tagSkill_Active_Damage {
int index;
char name[MAX_SKILL_NAME_LEN];
byte type; //火系?冰系?毒系?电系?魔法系?物理系?
int level_req; //需求最低等级
int strength_req; //最低力量需求
int agility_req; //最低敏捷需求
int wit_req; //最低智力需求
int command_req; //最低统率需求
int dmg_min; //最小伤害
int dmg_max; //最大伤害
int startup_frame_req; //启动帧数
int persist_frame_req; //持续帧数
int cooling_frame_req; //冷却帧数
int delay_frame_req; //延迟帧数
int risist_physics; //抵抗物理伤害
int risist_cold; //抵抗冰系伤害
int risist_fire; //抵抗火系伤害
int risist_poison; //抵抗毒系伤害
int risist_lighting; //抵抗电系伤害
int risist_magic; //抵抗魔法伤害
int hp_consume; //hp消耗
int mana_consume; //mana消耗
int sp_consume; //需要消耗掉的skill_point,即类似AG点数
BOOL region; //是否是区域技能
int gender_req; //性别专属
BOOL hunman_use; //人类能否使用
BOOL hun_use; //野蛮人
BOOL sorcer_use; //法师
BOOL genius_use; //精灵
BOOL bowman_use; //弓弩手
BOOL taoist_use; //道士
BOOL nodead_use; //亡灵
BOOL craftsman_use; //匠人
BOOL knight_use; //骑士
struct tagSkill_Active_Damage * pNext;
}SKILL_ACTIVE_DAMAGE, * LPSKILL_ACTIVE_DAMAGE;
//被动技能
typedef struct tagSkill_Passive_Damage {
int index; //序号
char name[MAX_SKILL_NAME_LEN]; //名称
int level_req; //需求最低等级
int strength_req; //最低力量需求
int agility_req; //最低敏捷需求
int wit_req; //最低智力需求
int command_req; //最低统率需求
int dmg_min; //最小伤害
int dmg_max; //最大伤害
int delay_frame_req; //延迟帧数
int risist_physics; //抵抗物理伤害
int risist_cold; //抵抗冰系伤害
int risist_fire; //抵抗火系伤害
int risist_poison; //抵抗毒系伤害
int risist_lighting; //抵抗电系伤害
int risist_magic; //抵抗魔法伤害
float evade_enhance; //躲避几率提升
float hp_enhance; //hp最大提升
float mana_enhance; //mana最大提升
float defence_enhance; //防御加强
int hp_consume; //hp消耗
int mana_consume; //mana消耗
int sp_consume; //需要消耗掉的skill_point,即类似AG点数
BOOL region; //是否是区域技能
int gender_req; //性别专属
BOOL hunman_use; //人类能否使用
BOOL hun_use; //野蛮人
BOOL sorcer_use; //法师
BOOL genius_use; //精灵
BOOL bowman_use; //弓弩手
BOOL taoist_use; //道士
BOOL nodead_use; //亡灵
BOOL craftsman_use; //匠人
BOOL knight_use; //骑士
}SKILL_PASSIVE_DAMAGE, * LPSKILL_PASSIVE_DAMAGE;
//增益技能
typedef struct tagSkill_Plus {
int index;
char name[MAX_SKILL_NAME_LEN];
int level_req; //需求最低等级
int strength_req; //最低力量需求
int agility_req; //最低敏捷需求
int wit_req; //最低智力需求
int command_req; //最低统率需求
int dmg_min; //最小伤害
int dmg_max; //最大伤害
int startup_frame_req; //启动帧数
int persist_frame_req; //持续帧数
int cooling_frame_req; //冷却帧数
int delay_frame_req; //延迟帧数
float physic_damage_enhance; //物理伤害提升
float fire_damage_enhance; //火系伤害提升
float cold_damage_enhance; //冰系伤害提升
float posion_damage_enhance; //毒系伤害提升
float lighting_damage_enhance; //电系伤害提升
float physic_absorb_damage; //物理伤害吸收
float fire_absorb_damage; //火系伤害吸收
float cold_absorb_damage; //冰系伤害吸收
float posion_absorb_damage; //毒系伤害吸收
float lighting_absorb_damage; //电系伤害吸收
float curse_got_persent; //被诅咒几率提升
float double_damage_persent; //双倍攻击几率提升
float deadliness_damage_persent; //致命一击几率提升
int hp_consume; //hp消耗
int mana_consume; //mana消耗
int sp_consume; //需要消耗掉的skill_point,即类似AG点数
BOOL region; //是否是区域技能
int gender_req; //性别专属
BOOL hunman_use; //人类能否使用
BOOL hun_use; //野蛮人
BOOL sorcer_use; //法师
BOOL genius_use; //精灵
BOOL bowman_use; //弓弩手
BOOL taoist_use; //道士
BOOL nodead_use; //亡灵
BOOL craftsman_use; //匠人
BOOL knight_use; //骑士
}SKILL_PLUS, * LPSKILL_PLUS;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -