123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201 |
- #include "user.h"
- #include <string>
- User::User() { this->init(); }
- User::User(std::string name, std::string realname) {
- uid = 0;
- nick = name;
- real = realname;
- experience = 0;
- laston = 0;
- armor = 1;
- armorpoints = 8;
- shield = 0;
- shieldpoints = 0;
- shieldsup = 0;
- hitpoints = 4;
- gun = 1;
- metal = 0;
- fuel = 10;
- dirt = true;
- }
- User::User(int uuid, std::string name, std::string realname, int exp, int lo, int a, int ap, int s, int sp, int su, int hp, int g, int m, int f) {
- uid = uuid;
- nick = name;
- real = realname;
- experience = exp;
- laston = lo;
- armor = a;
- armorpoints = ap;
- shield = s;
- shieldpoints = sp;
- shieldsup = su;
- hitpoints = hp;
- gun = g;
- metal = m;
- fuel = f;
- dirt = false;
- }
- void User::init(void) {
- uid = 0;
- nick = "Unknown";
- real = "Unknown";
- experience = 0;
- laston = 0;
- armor = 1;
- armorpoints = 8;
- shield = 0;
- shieldpoints = 0;
- shieldsup = 0;
- hitpoints = 4;
- gun = 1;
- metal = 0;
- fuel = 10;
- dirt = false;
- }
- bool User::dirty(void) {return dirt;}
- int User::calcArmor(void) {return (3 * (armor + 1));}
- int User::calcShield(void) {return (6 * (shield + 1));}
- int User::calcGun(void) {return (4 * (gun + 1));}
- int User::calcHP(void) {return (gun + armor + shield + 2);}
- int User::calcSP(void) {return (shield * 3);}
- int User::calcAP(void) {return (armor * 8);}
- void User::regen(void) {
- if(shieldsup != 0) {
- dirt = true;
- shieldsup -= 1;
- }
- if(shieldsup != 0) {
- dirt = true;
- shieldpoints += 1;
- } else {
- dirt = true;
- shieldpoints += shield;
- }
- if(shieldpoints > calcSP()) {
- dirt = true;
- shieldpoints = calcSP();
- }
- }
- void User::repair(bool docked) {
- int amount;
- if(docked) {
- amount = 4;
- } else {
- amount = 2;
- }
- if(armorpoints < calcAP()) {
- if(metal != 0) {
- dirt = true;
- metal -= 1;
- armorpoints += amount;
- if(armorpoints > calcAP()) {
- armorpoints = calcAP();
- }
- }
- }
- }
- int User::takeDamage(int dmg) {
- if(shieldsup == 0) {
- if(shieldpoints >= dmg) {
-
- dirt = true;
- shieldpoints -= dmg;
- return 0;
- } else {
-
- dirt = true;
- dmg -= shieldpoints;
- shieldpoints = 0;
- shieldsup += (shield + 2);
- }
- }
- if(dmg > 0) {
- if(armorpoints >= dmg) {
-
- dirt = true;
- armorpoints -= dmg;
- return 0;
- } else {
-
- dirt = true;
- dmg -= armorpoints;
- armorpoints = 0;
- }
- }
- if(dmg > 0) {
- if(hitpoints > dmg) {
-
- dirt = true;
- hitpoints -= dmg;
- return 0;
- } else {
-
-
- dirt = true;
- int temp = dmg;
- dmg -= hitpoints;
- hitpoints -= temp;
- temp = 0;
- return dmg;
- }
- }
- }
- void User::addEXP(int amount) {dirt = true; experience += amount;}
- void User::rmEXP(int amount) {dirt = true; experience -= amount;}
- void User::addMetal(int amount) {dirt = true; metal += amount;}
- void User::rmMetal(int amount) {dirt = true; metal -= amount;}
- void User::addFuel(int amount) {dirt = true; fuel += amount;}
- void User::rmFuel(int amount) {dirt = true; fuel -= amount;}
- void User::rmLaston(int amount) {dirt = true; laston -= amount; if(laston < 0) {laston = 0;}}
- void User::addHP(int amount) {dirt = true; hitpoints += amount;}
- void User::addGun(int amount) {dirt = true; gun += amount; addHP(1);}
- void User::addArmor(int amount) {dirt = true; armor += amount; armorpoints += (amount * 8); addHP(1);}
- void User::addShield(int amount) {dirt = true; shield += amount; if(shieldsup == 0) {shieldpoints += (amount * 1);} else {shieldpoints += (amount * 3);} addHP(1);}
- void User::rmSU(int amount) {dirt = true; shieldsup -= amount; if(shieldsup > 0) {shieldsup = 0;}}
- void User::set_dirt(bool val) {dirt = val;}
- void User::set_uid(int val) {uid = val;}
- void User::set_experience(int val) {experience = val;}
- void User::set_gun(int val) {gun = val;}
- void User::set_armor(int val) {armor = val;}
- void User::set_armorpoints(int val) {armorpoints = val;}
- void User::set_shield(int val) {shield = val;}
- void User::set_shieldpoints(int val) {shieldpoints = val;}
- void User::set_shieldsup(int val) {shieldsup = val;}
- void User::set_hitpoints(int val) {hitpoints = val;}
- void User::set_laston(int val) {laston = val;}
- void User::set_nick(std::string val) {nick = val;}
- void User::set_real(std::string val) {real = val;}
- void User::set_metal(int val) {metal = val;}
- void User::set_fuel(int val) {fuel = val;}
- bool User::get_dirt(void) {return dirt;}
- int User::get_uid(void) {return uid;}
- int User::get_experience(void) {return experience;}
- int User::get_gun(void) {return gun;}
- int User::get_armor(void) {return armor;}
- int User::get_armorpoints(void) {return armorpoints;}
- int User::get_shield(void) {return shield;}
- int User::get_shieldpoints(void) {return shieldpoints;}
- int User::get_shieldsup(void) {return shieldsup;}
- int User::get_hitpoints(void) {return hitpoints;}
- int User::get_laston(void) {return laston;}
- int User::get_metal(void) {return metal;}
- int User::get_fuel(void) {return fuel;}
- std::string User::get_nick(void) {return nick;}
- std::string User::get_real(void) {return real;}
|