mirror of
https://github.com/Karaka-Management/cOMS.git
synced 2026-01-11 11:18:40 +00:00
349 lines
11 KiB
C
349 lines
11 KiB
C
/**
|
|
* Jingga
|
|
*
|
|
* @copyright Jingga
|
|
* @license OMS License 2.0
|
|
* @version 1.0.0
|
|
* @link https://jingga.app
|
|
*/
|
|
#ifndef TOS_MODELS_MOB_PLAYER_STATS_H
|
|
#define TOS_MODELS_MOB_PLAYER_STATS_H
|
|
|
|
#include "../../../stdlib/Types.h"
|
|
|
|
#if SERVER
|
|
struct SPlayerStats {
|
|
byte stat_str; // strength : effects health + base damage
|
|
byte stat_int; // inteligence : effects resource + base demage
|
|
byte stat_acc; // accuracy : effects critical chance + base damage + miss chance
|
|
byte stat_agi; // agility : effects resource + base damage + dodge change
|
|
byte stat_def; // defense : effects resource + base defense + dodge change
|
|
byte stat_sta; // stamina : effects health regen + resource regen
|
|
|
|
// Naming conventions
|
|
// : total
|
|
// _base : character stats (see stat_ above)
|
|
// _equip : character equipment
|
|
// _item : other item effects (consumables, e.g. potions)
|
|
// _effect : external aoe/skill effect
|
|
// _skill : own skill
|
|
|
|
// Damage types
|
|
unsigned int dmg;
|
|
unsigned int dmg_base;
|
|
unsigned int dmg_equip;
|
|
unsigned int dmg_item;
|
|
unsigned int dmg_effect;
|
|
unsigned int dmg_skill;
|
|
|
|
unsigned int dmg_pircing;
|
|
unsigned int dmg_pircing_base;
|
|
unsigned int dmg_pircing_equip;
|
|
unsigned int dmg_pircing_item;
|
|
unsigned int dmg_pircing_effect;
|
|
unsigned int dmg_pircing_skill;
|
|
|
|
unsigned int dmg_slashing;
|
|
unsigned int dmg_slashing_base;
|
|
unsigned int dmg_slashing_equip;
|
|
unsigned int dmg_slashing_item;
|
|
unsigned int dmg_slashing_effect;
|
|
unsigned int dmg_slashing_skill;
|
|
|
|
unsigned int dmg_bludgeoning;
|
|
unsigned int dmg_bludgeoning_base;
|
|
unsigned int dmg_bludgeoning_equip;
|
|
unsigned int dmg_bludgeoning_item;
|
|
unsigned int dmg_bludgeoning_effect;
|
|
unsigned int dmg_bludgeoning_skill;
|
|
|
|
unsigned int dmg_fire;
|
|
unsigned int dmg_fire_base;
|
|
unsigned int dmg_fire_equip;
|
|
unsigned int dmg_fire_item;
|
|
unsigned int dmg_fire_effect;
|
|
unsigned int dmg_fire_skill;
|
|
|
|
unsigned int dmg_water;
|
|
unsigned int dmg_water_base;
|
|
unsigned int dmg_water_equip;
|
|
unsigned int dmg_water_item;
|
|
unsigned int dmg_water_effect;
|
|
unsigned int dmg_water_skill;
|
|
|
|
unsigned int dmg_ice;
|
|
unsigned int dmg_ice_base;
|
|
unsigned int dmg_ice_equip;
|
|
unsigned int dmg_ice_item;
|
|
unsigned int dmg_ice_effect;
|
|
unsigned int dmg_ice_skill;
|
|
|
|
unsigned int dmg_earth;
|
|
unsigned int dmg_earth_base;
|
|
unsigned int dmg_earth_equip;
|
|
unsigned int dmg_earth_item;
|
|
unsigned int dmg_earth_effect;
|
|
unsigned int dmg_earth_skill;
|
|
|
|
unsigned int dmg_wind;
|
|
unsigned int dmg_wind_base;
|
|
unsigned int dmg_wind_equip;
|
|
unsigned int dmg_wind_item;
|
|
unsigned int dmg_wind_effect;
|
|
unsigned int dmg_wind_skill;
|
|
|
|
unsigned int dmg_poison;
|
|
unsigned int dmg_poison_base;
|
|
unsigned int dmg_poison_equip;
|
|
unsigned int dmg_poison_item;
|
|
unsigned int dmg_poison_effect;
|
|
unsigned int dmg_poison_skill;
|
|
|
|
unsigned int dmg_lightning;
|
|
unsigned int dmg_lightning_base;
|
|
unsigned int dmg_lightning_equip;
|
|
unsigned int dmg_lightning_item;
|
|
unsigned int dmg_lightning_effect;
|
|
unsigned int dmg_lightning_skill;
|
|
|
|
unsigned int dmg_holy;
|
|
unsigned int dmg_holy_base;
|
|
unsigned int dmg_holy_equip;
|
|
unsigned int dmg_holy_item;
|
|
unsigned int dmg_holy_effect;
|
|
unsigned int dmg_holy_skill;
|
|
|
|
unsigned int dmg_arcane;
|
|
unsigned int dmg_arcane_base;
|
|
unsigned int dmg_arcane_equip;
|
|
unsigned int dmg_arcane_item;
|
|
unsigned int dmg_arcane_effect;
|
|
unsigned int dmg_arcane_skill;
|
|
|
|
unsigned int dmg_corrupted;
|
|
unsigned int dmg_corrupted_base;
|
|
unsigned int dmg_corrupted_equip;
|
|
unsigned int dmg_corrupted_item;
|
|
unsigned int dmg_corrupted_effect;
|
|
unsigned int dmg_corrupted_skill;
|
|
|
|
unsigned int dmg_crit;
|
|
unsigned int dmg_crit_base;
|
|
unsigned int dmg_crit_equip;
|
|
unsigned int dmg_crit_item;
|
|
unsigned int dmg_crit_effect;
|
|
unsigned int dmg_crit_skill;
|
|
|
|
float dmg_crit_chance;
|
|
float dmg_crit_chance_base;
|
|
float dmg_crit_chance_equip;
|
|
float dmg_crit_chance_item;
|
|
float dmg_crit_chance_effect;
|
|
float dmg_crit_chance_skill;
|
|
|
|
// Health & Resource
|
|
unsigned int health;
|
|
unsigned int health_base;
|
|
unsigned int health_equip;
|
|
unsigned int health_item;
|
|
unsigned int health_effect;
|
|
unsigned int health_skill;
|
|
|
|
unsigned int health_regen;
|
|
unsigned int health_regen_base;
|
|
unsigned int health_regen_equip;
|
|
unsigned int health_regen_item;
|
|
unsigned int health_regen_effect;
|
|
unsigned int health_regen_skill;
|
|
|
|
unsigned int resource;
|
|
unsigned int resource_base;
|
|
unsigned int resource_equip;
|
|
unsigned int resource_item;
|
|
unsigned int resource_effect;
|
|
unsigned int resource_skill;
|
|
|
|
unsigned int resource_regen;
|
|
unsigned int resource_regen_base;
|
|
unsigned int resource_regen_equip;
|
|
unsigned int resource_regen_item;
|
|
unsigned int resource_regen_effect;
|
|
unsigned int resource_regen_skill;
|
|
|
|
// Defense types
|
|
// think about it as armor and/or resistence if it helps
|
|
unsigned int defense;
|
|
unsigned int defense_base;
|
|
unsigned int defense_equip;
|
|
unsigned int defense_item;
|
|
unsigned int defense_effect;
|
|
unsigned int defense_skill;
|
|
|
|
unsigned int defense_pircing;
|
|
unsigned int defense_pircing_base;
|
|
unsigned int defense_pircing_equip;
|
|
unsigned int defense_pircing_item;
|
|
unsigned int defense_pircing_effect;
|
|
unsigned int defense_pircing_skill;
|
|
|
|
unsigned int defense_slashing;
|
|
unsigned int defense_slashing_base;
|
|
unsigned int defense_slashing_equip;
|
|
unsigned int defense_slashing_item;
|
|
unsigned int defense_slashing_effect;
|
|
unsigned int defense_slashing_skill;
|
|
|
|
unsigned int defense_bludgeoning;
|
|
unsigned int defense_bludgeoning_base;
|
|
unsigned int defense_bludgeoning_equip;
|
|
unsigned int defense_bludgeoning_item;
|
|
unsigned int defense_bludgeoning_effect;
|
|
unsigned int defense_bludgeoning_skill;
|
|
|
|
unsigned int defense_fire;
|
|
unsigned int defense_fire_base;
|
|
unsigned int defense_fire_equip;
|
|
unsigned int defense_fire_item;
|
|
unsigned int defense_fire_effect;
|
|
unsigned int defense_fire_skill;
|
|
|
|
unsigned int defense_water;
|
|
unsigned int defense_water_base;
|
|
unsigned int defense_water_equip;
|
|
unsigned int defense_water_item;
|
|
unsigned int defense_water_effect;
|
|
unsigned int defense_water_skill;
|
|
|
|
unsigned int defense_ice;
|
|
unsigned int defense_ice_base;
|
|
unsigned int defense_ice_equip;
|
|
unsigned int defense_ice_item;
|
|
unsigned int defense_ice_effect;
|
|
unsigned int defense_ice_skill;
|
|
|
|
unsigned int defense_earth;
|
|
unsigned int defense_earth_base;
|
|
unsigned int defense_earth_equip;
|
|
unsigned int defense_earth_item;
|
|
unsigned int defense_earth_effect;
|
|
unsigned int defense_earth_skill;
|
|
|
|
unsigned int defense_wind;
|
|
unsigned int defense_wind_base;
|
|
unsigned int defense_wind_equip;
|
|
unsigned int defense_wind_item;
|
|
unsigned int defense_wind_effect;
|
|
unsigned int defense_wind_skill;
|
|
|
|
unsigned int defense_poison;
|
|
unsigned int defense_poison_base;
|
|
unsigned int defense_poison_equip;
|
|
unsigned int defense_poison_item;
|
|
unsigned int defense_poison_effect;
|
|
unsigned int defense_poison_skill;
|
|
|
|
unsigned int defense_lightning;
|
|
unsigned int defense_lightning_base;
|
|
unsigned int defense_lightning_equip;
|
|
unsigned int defense_lightning_item;
|
|
unsigned int defense_lightning_effect;
|
|
unsigned int defense_lightning_skill;
|
|
|
|
unsigned int defense_holy;
|
|
unsigned int defense_holy_base;
|
|
unsigned int defense_holy_equip;
|
|
unsigned int defense_holy_item;
|
|
unsigned int defense_holy_effect;
|
|
unsigned int defense_holy_skill;
|
|
|
|
unsigned int defense_arcane;
|
|
unsigned int defense_arcane_base;
|
|
unsigned int defense_arcane_equip;
|
|
unsigned int defense_arcane_item;
|
|
unsigned int defense_arcane_effect;
|
|
unsigned int defense_arcane_skill;
|
|
|
|
unsigned int defense_corrupted;
|
|
unsigned int defense_corrupted_base;
|
|
unsigned int defense_corrupted_equip;
|
|
unsigned int defense_corrupted_item;
|
|
unsigned int defense_corrupted_effect;
|
|
unsigned int defense_corrupted_skill;
|
|
|
|
// Accuracy
|
|
float dodge_chance;
|
|
float dodge_chance_base;
|
|
float dodge_chance_equip;
|
|
float dodge_chance_item;
|
|
float dodge_chance_effect;
|
|
float dodge_chance_skill;
|
|
|
|
float root_protection;
|
|
float root_protection_base;
|
|
float root_protection_equip;
|
|
float root_protection_item;
|
|
float root_protection_effect;
|
|
float root_protection_skill;
|
|
|
|
float miss_chance;
|
|
float miss_chance_base;
|
|
float miss_chance_equip;
|
|
float miss_chance_item;
|
|
float miss_chance_effect;
|
|
float miss_chance_skill;
|
|
|
|
// Movement
|
|
// Additional speeds may be defined for players
|
|
float speed_walk1; // normal/fast
|
|
float speed_walk1_base;
|
|
float speed_walk1_equip;
|
|
float speed_walk1_item;
|
|
float speed_walk1_effect;
|
|
float speed_walk1_skill;
|
|
|
|
float speed_walk2; // casual/slow
|
|
|
|
float speed_swim1; // normal/fast
|
|
float speed_swim1_base;
|
|
float speed_swim1_equip;
|
|
float speed_swim1_item;
|
|
float speed_swim1_effect;
|
|
float speed_swim1_skill;
|
|
|
|
float speed_swim2; // casual/slow
|
|
|
|
float speed_fly1; // normal/fast
|
|
float speed_fly1_base;
|
|
float speed_fly1_equip;
|
|
float speed_fly1_item;
|
|
float speed_fly1_effect;
|
|
float speed_fly1_skill;
|
|
|
|
float speed_fly2; // casual/slow
|
|
|
|
float speed_jump;
|
|
float speed_dodge;
|
|
float speed_turn;
|
|
|
|
// Fighting speed
|
|
float speed_cast;
|
|
float speed_cast_base;
|
|
float speed_cast_equip;
|
|
float speed_cast_item;
|
|
float speed_cast_effect;
|
|
float speed_cast_skill;
|
|
|
|
float speed_attack;
|
|
float speed_attack_base;
|
|
float speed_attack_equip;
|
|
float speed_attack_item;
|
|
float speed_attack_effect;
|
|
float speed_attack_skill;
|
|
};
|
|
#endif
|
|
|
|
struct CPlayerStats {
|
|
|
|
};
|
|
|
|
#endif |