Initial MSVC 2008 projects workspace
This commit is contained in:
79
L2C_Server/world/templates/chars/L2CharTemplate.cpp
Normal file
79
L2C_Server/world/templates/chars/L2CharTemplate.cpp
Normal file
@@ -0,0 +1,79 @@
|
||||
#include "pch.h"
|
||||
#include "L2CharTemplate.h"
|
||||
|
||||
L2CharTemplate::L2CharTemplate( StatsSet& set )
|
||||
{
|
||||
// Base stats
|
||||
set.getInt( "baseSTR", &baseSTR );
|
||||
set.getInt( "baseCON", &baseCON );
|
||||
set.getInt( "baseDEX", &baseDEX );
|
||||
set.getInt( "baseINT", &baseINT );
|
||||
set.getInt( "baseWIT", &baseWIT );
|
||||
set.getInt( "baseMEN", &baseMEN );
|
||||
set.getDouble( "baseHpMax", &baseHpMax );
|
||||
set.getDouble( "baseCpMax", &baseCpMax );
|
||||
set.getDouble( "baseMpMax", &baseMpMax );
|
||||
set.getDouble( "baseHpReg", &baseHpReg );
|
||||
set.getDouble( "baseMpReg", &baseMpReg );
|
||||
set.getInt( "basePAtk", &basePAtk );
|
||||
set.getInt( "baseMAtk", &baseMAtk );
|
||||
set.getInt( "basePDef", &basePDef );
|
||||
set.getInt( "baseMDef", &baseMDef );
|
||||
set.getInt( "basePAtkSpd", &basePAtkSpd );
|
||||
set.getInt( "baseMAtkSpd", &baseMAtkSpd );
|
||||
set.getDouble( "baseMReuseDelay", &baseMReuseRate, 1.0 );
|
||||
set.getInt( "baseShldDef", &baseShldDef );
|
||||
set.getInt( "baseAtkRange", &baseAtkRange );
|
||||
set.getInt( "baseShldRate", &baseShldRate );
|
||||
set.getInt( "baseCritRate", &baseCritRate );
|
||||
set.getInt( "baseMCritRate", &baseMCritRate, 80 ); // CT2: The magic critical rate has been increased to 10 times.
|
||||
set.getInt( "baseWalkSpd", &baseWalkSpd );
|
||||
set.getInt( "baseRunSpd", &baseRunSpd );
|
||||
|
||||
// missed base stats
|
||||
set.getInt( "baseAccuracy", &baseAccuracy );
|
||||
set.getInt( "baseEvasion", &baseEvasion );
|
||||
|
||||
// SpecialStats
|
||||
set.getInt( "baseBreath", &baseBreath, 100 );
|
||||
set.getInt( "baseAggression", &baseAggression, 0 );
|
||||
set.getInt( "baseBleed", &baseBleed, 0 );
|
||||
set.getInt( "basePoison", &basePoison, 0 );
|
||||
set.getInt( "baseStun", &baseStun, 0 );
|
||||
set.getInt( "baseRoot", &baseRoot, 0 );
|
||||
set.getInt( "baseMovement", &baseMovement, 0 );
|
||||
set.getInt( "baseConfusion", &baseConfusion, 0 );
|
||||
set.getInt( "baseSleep", &baseSleep, 0 );
|
||||
set.getInt( "baseFire", &baseFire, 0 );
|
||||
set.getInt( "baseWind", &baseWind, 0 );
|
||||
set.getInt( "baseWater", &baseWater, 0 );
|
||||
set.getInt( "baseEarth", &baseEarth, 0 );
|
||||
set.getInt( "baseHoly", &baseHoly, 0 );
|
||||
set.getInt( "baseDark", &baseDark, 0 );
|
||||
set.getDouble( "baseAaggressionVuln", &baseAggressionVuln, 1.0 );
|
||||
set.getDouble( "baseBleedVuln", &baseBleedVuln, 1.0 );
|
||||
set.getDouble( "basePoisonVuln", &basePoisonVuln, 1.0 );
|
||||
set.getDouble( "baseStunVuln", &baseStunVuln, 1.0 );
|
||||
set.getDouble( "baseRootVuln", &baseRootVuln, 1.0 );
|
||||
set.getDouble( "baseMovementVuln", &baseMovementVuln, 1.0 );
|
||||
set.getDouble( "baseConfusionVuln", &baseConfusionVuln, 1.0 );
|
||||
set.getDouble( "baseSleepVuln", &baseSleepVuln, 1.0 );
|
||||
set.getDouble( "baseFireRes", &baseFireRes, 0.0 );
|
||||
set.getDouble( "baseWindRes", &baseWindRes, 0.0 );
|
||||
set.getDouble( "baseWaterRes", &baseWaterRes, 0.0 );
|
||||
set.getDouble( "baseEarthRes", &baseEarthRes, 0.0 );
|
||||
set.getDouble( "baseHolyRes", &baseHolyRes, 0.0 );
|
||||
set.getDouble( "baseDarkRes", &baseDarkRes, 0.0 );
|
||||
set.getDouble( "baseCritVuln", &baseCritVuln, 1.0 );
|
||||
|
||||
// undead? default NO
|
||||
set.getBool( "isUndead", &isUndead, false );
|
||||
|
||||
//C4 Stats
|
||||
set.getInt( "baseMpConsumeRate", &baseMpConsumeRate, 0 );
|
||||
set.getInt( "baseHpConsumeRate", &baseHpConsumeRate, 0 );
|
||||
|
||||
// Geometry
|
||||
set.getInt( "collision_radius", &collisionRadius, 10 );
|
||||
set.getInt( "collision_height", &collisionHeight, 10 );
|
||||
}
|
||||
81
L2C_Server/world/templates/chars/L2CharTemplate.h
Normal file
81
L2C_Server/world/templates/chars/L2CharTemplate.h
Normal file
@@ -0,0 +1,81 @@
|
||||
#pragma once
|
||||
#include "world/templates/StatsSet.h"
|
||||
|
||||
class L2CharTemplate
|
||||
{
|
||||
public:
|
||||
L2CharTemplate( StatsSet& set );
|
||||
|
||||
public:
|
||||
// BaseStats
|
||||
int baseSTR;
|
||||
int baseCON;
|
||||
int baseDEX;
|
||||
int baseINT;
|
||||
int baseWIT;
|
||||
int baseMEN;
|
||||
double baseHpMax;
|
||||
double baseCpMax;
|
||||
double baseMpMax;
|
||||
double baseHpReg;
|
||||
double baseMpReg;
|
||||
|
||||
int basePAtk;
|
||||
int baseMAtk;
|
||||
int basePDef;
|
||||
int baseMDef;
|
||||
int basePAtkSpd;
|
||||
int baseMAtkSpd;
|
||||
double baseMReuseRate;
|
||||
int baseShldDef;
|
||||
int baseAtkRange;
|
||||
int baseShldRate;
|
||||
int baseCritRate;
|
||||
int baseMCritRate;
|
||||
int baseWalkSpd;
|
||||
int baseRunSpd;
|
||||
// missed base stats
|
||||
int baseAccuracy;
|
||||
int baseEvasion;
|
||||
|
||||
// SpecialStats
|
||||
int baseBreath;
|
||||
int baseAggression;
|
||||
int baseBleed;
|
||||
int basePoison;
|
||||
int baseStun;
|
||||
int baseRoot;
|
||||
int baseMovement;
|
||||
int baseConfusion;
|
||||
int baseSleep;
|
||||
int baseFire;
|
||||
int baseWind;
|
||||
int baseWater;
|
||||
int baseEarth;
|
||||
int baseHoly;
|
||||
int baseDark;
|
||||
double baseAggressionVuln;
|
||||
double baseBleedVuln;
|
||||
double basePoisonVuln;
|
||||
double baseStunVuln;
|
||||
double baseRootVuln;
|
||||
double baseMovementVuln;
|
||||
double baseConfusionVuln;
|
||||
double baseSleepVuln;
|
||||
double baseFireRes;
|
||||
double baseWindRes;
|
||||
double baseWaterRes;
|
||||
double baseEarthRes;
|
||||
double baseHolyRes;
|
||||
double baseDarkRes;
|
||||
double baseCritVuln;
|
||||
|
||||
bool isUndead;
|
||||
|
||||
//C4 Stats
|
||||
int baseMpConsumeRate;
|
||||
int baseHpConsumeRate;
|
||||
|
||||
int collisionRadius;
|
||||
int collisionHeight;
|
||||
};
|
||||
83
L2C_Server/world/templates/chars/L2PlayerTemplate.cpp
Normal file
83
L2C_Server/world/templates/chars/L2PlayerTemplate.cpp
Normal file
@@ -0,0 +1,83 @@
|
||||
#include "pch.h"
|
||||
#include "L2PlayerTemplate.h"
|
||||
|
||||
L2PlayerTemplate::L2PlayerTemplate( StatsSet& set ): L2CharTemplate( set )
|
||||
{
|
||||
set.getInt( "classId", &iClassId );
|
||||
classId = ClassIdTree::getInstance()->getClassId( iClassId );
|
||||
set.getInt( "raceId", (int *)&race );
|
||||
|
||||
set.getInt( "spawnX", &spawnX );
|
||||
set.getInt( "spawnY", &spawnY );
|
||||
set.getInt( "spawnZ", &spawnZ );
|
||||
|
||||
set.getInt( "classBaseLevel", &classBaseLevel );
|
||||
|
||||
set.getDouble( "lvlHpAdd", &lvlHpAdd );
|
||||
set.getDouble( "lvlHpMod", &lvlHpMod );
|
||||
set.getDouble( "lvlCpAdd", &lvlCpAdd );
|
||||
set.getDouble( "lvlCpMod", &lvlCpMod );
|
||||
set.getDouble( "lvlMpAdd", &lvlMpAdd );
|
||||
set.getDouble( "lvlMpMod", &lvlMpMod );
|
||||
|
||||
// missed loaded vars
|
||||
set.getInt( "baseLoad", &baseLoad, 62500 );
|
||||
set.getBool( "canCraft", &canCraft, false );
|
||||
}
|
||||
|
||||
void L2PlayerTemplate::addItem( int itemId, int amount, bool equipped )
|
||||
{
|
||||
PcTemplateItem it( itemId, amount, equipped );
|
||||
m_items.push_back( it );
|
||||
}
|
||||
|
||||
const std::list<L2PlayerTemplate::PcTemplateItem>& L2PlayerTemplate::getItems() const
|
||||
{
|
||||
return m_items;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
L2PlayerTemplate::PcTemplateItem::PcTemplateItem()
|
||||
{
|
||||
m_itemId = 0;
|
||||
m_amount = 0;
|
||||
m_equipped = false;
|
||||
}
|
||||
|
||||
L2PlayerTemplate::PcTemplateItem::PcTemplateItem( int itemId, int amount, bool equipped )
|
||||
{
|
||||
m_itemId = itemId;
|
||||
m_amount = amount;
|
||||
m_equipped = equipped;
|
||||
}
|
||||
|
||||
L2PlayerTemplate::PcTemplateItem::PcTemplateItem( const L2PlayerTemplate::PcTemplateItem& other )
|
||||
{
|
||||
this->operator=( other );
|
||||
}
|
||||
|
||||
const L2PlayerTemplate::PcTemplateItem& L2PlayerTemplate::PcTemplateItem::operator=( const L2PlayerTemplate::PcTemplateItem& other )
|
||||
{
|
||||
if( this == &other ) return (*this);
|
||||
m_itemId = other.m_itemId;
|
||||
m_amount = other.m_amount;
|
||||
m_equipped = other.m_equipped;
|
||||
return (*this);
|
||||
}
|
||||
|
||||
int L2PlayerTemplate::PcTemplateItem::getItemId() const
|
||||
{
|
||||
return m_itemId;
|
||||
}
|
||||
|
||||
int L2PlayerTemplate::PcTemplateItem::getAmount() const
|
||||
{
|
||||
return m_amount;
|
||||
}
|
||||
|
||||
bool L2PlayerTemplate::PcTemplateItem::isEquipped() const
|
||||
{
|
||||
return m_equipped;
|
||||
}
|
||||
53
L2C_Server/world/templates/chars/L2PlayerTemplate.h
Normal file
53
L2C_Server/world/templates/chars/L2PlayerTemplate.h
Normal file
@@ -0,0 +1,53 @@
|
||||
#pragma once
|
||||
#include "L2CharTemplate.h"
|
||||
#include "world/model/base/ClassId.h"
|
||||
#include "world/model/base/ClassIdTree.h"
|
||||
#include "world/model/base/Race.h"
|
||||
|
||||
class L2PlayerTemplate: public L2CharTemplate
|
||||
{
|
||||
public: // class for template item
|
||||
class PcTemplateItem
|
||||
{
|
||||
public:
|
||||
PcTemplateItem();
|
||||
PcTemplateItem( int itemId, int amount, bool equipped );
|
||||
PcTemplateItem( const PcTemplateItem& other );
|
||||
const PcTemplateItem& operator=( const PcTemplateItem& other );
|
||||
int getItemId() const;
|
||||
int getAmount() const;
|
||||
bool isEquipped() const;
|
||||
protected:
|
||||
int m_itemId;
|
||||
int m_amount;
|
||||
bool m_equipped;
|
||||
};
|
||||
|
||||
public:
|
||||
L2PlayerTemplate( StatsSet& set );
|
||||
void addItem( int itemId, int amount, bool equipped );
|
||||
const std::list<L2PlayerTemplate::PcTemplateItem>& getItems() const;
|
||||
|
||||
public:
|
||||
int iClassId;
|
||||
const ClassId *classId;
|
||||
Race race;
|
||||
|
||||
int spawnX;
|
||||
int spawnY;
|
||||
int spawnZ;
|
||||
|
||||
int classBaseLevel;
|
||||
double lvlHpAdd;
|
||||
double lvlHpMod;
|
||||
double lvlCpAdd;
|
||||
double lvlCpMod;
|
||||
double lvlMpAdd;
|
||||
double lvlMpMod;
|
||||
|
||||
int baseLoad;
|
||||
bool canCraft;
|
||||
|
||||
protected:
|
||||
std::list<L2PlayerTemplate::PcTemplateItem> m_items;
|
||||
};
|
||||
Reference in New Issue
Block a user