public Scroll(Scroll s) : base(s.get_my_IDno(), s.get_my_gold_value(), s.get_my_name()) { //Enums my_sType = s.get_spell_type(); spell_dmg_type = s.get_damage_type(); my_prjType = s.get_assoc_projectile(); my_specAnim = s.get_spec_impact_anim(); myBufforDebuff = s.get_status_effect(); //Ints scroll_tier = s.get_tier(); aoe_size = s.get_aoe_size(); max_range = s.get_range(); min_damage = s.get_specific_damage(false); max_damage = s.get_specific_damage(true); total_impacts = s.get_t_impacts(); mana_cost = s.get_manaCost(); buffDebuff_duration = s.get_duration(); //Bools destroys_walls = s.spell_destroys_walls(); melee_range = s.is_melee_range_spell(); }
public Scroll(int IDno, int goldVal, string myName, int stier, int smana, int srange, int sAoe, int minDmg, int maxDmg, bool meleeSpell, Atk_Area_Type s_spell_type, Projectile.projectile_type s_prj_type, Attack.Damage dmg_type, bool destroyWalls, int t_impacts, Status_Type s_buffDebuff, int spell_duration, Projectile.special_anim s_prj_special_anim) : base(IDno, goldVal, myName) { //Enums my_sType = s_spell_type; spell_dmg_type = dmg_type; my_prjType = s_prj_type; my_specAnim = s_prj_special_anim; myBufforDebuff = s_buffDebuff; //Ints scroll_tier = stier; aoe_size = sAoe; max_range = srange; min_damage = minDmg; max_damage = maxDmg; total_impacts = t_impacts; mana_cost = smana; buffDebuff_duration = spell_duration; //Bools destroys_walls = destroyWalls; melee_range = meleeSpell; }
private Scroll process_sDC(ScrollDC rs) { int SIDNO = rs.IDNumber; int SCOST = rs.Cost; string SNAME = rs.Name; Scroll.Atk_Area_Type SAETP = 0; switch (rs.AOEType) { case "singleTile": SAETP = Scroll.Atk_Area_Type.singleTile; break; case "cloudAOE": SAETP = Scroll.Atk_Area_Type.cloudAOE; break; case "solidblockAOE": SAETP = Scroll.Atk_Area_Type.solidblockAOE; break; case "randomblockAOE": SAETP = Scroll.Atk_Area_Type.randomblockAOE; break; case "personalBuff": SAETP = Scroll.Atk_Area_Type.personalBuff; break; case "piercingBolt": SAETP = Scroll.Atk_Area_Type.piercingBolt; break; case "smallfixedAOE": SAETP = Scroll.Atk_Area_Type.smallfixedAOE; break; case "chainedBolt": SAETP = Scroll.Atk_Area_Type.chainedBolt; break; case "enemyDebuff": SAETP = Scroll.Atk_Area_Type.enemyDebuff; break; } int STIER = rs.ScrollTier; int SMANA = rs.ManaCost; int SRANG = rs.ScrollRange; int SAESZ = rs.AOESize; int SMNDM = rs.MinDamage; int SMADM = rs.MaxDamage; Attack.Damage SDMTP = 0; switch (rs.DamageType) { case "Acid": SDMTP = Attack.Damage.Acid; break; case "Crushing": SDMTP = Attack.Damage.Crushing; break; case "Electric": SDMTP = Attack.Damage.Electric; break; case "Fire": SDMTP = Attack.Damage.Fire; break; case "Frost": SDMTP = Attack.Damage.Frost; break; case "Piercing": SDMTP = Attack.Damage.Piercing; break; case "Slashing": SDMTP = Attack.Damage.Slashing; break; } bool SDSWL = false; if (String.Compare("Y", rs.DestroysWalls) == 0) { SDSWL = true; } bool SMLSP = false; if (String.Compare("Y", rs.MeleeSpell) == 0) { SMLSP = true; } int SCHIP = rs.ChainImpacts; Projectile.projectile_type SPRJT = 0; switch (rs.SpellProjectile) { case "Blank": SPRJT = Projectile.projectile_type.Blank; break; case "Arrow": SPRJT = Projectile.projectile_type.Arrow; break; case "Flamebolt": SPRJT = Projectile.projectile_type.Flamebolt; break; case "Javelin": SPRJT = Projectile.projectile_type.Javelin; break; case "AcidCloud": SPRJT = Projectile.projectile_type.AcidCloud; break; case "Crossbow_Bolt": SPRJT = Projectile.projectile_type.Crossbow_Bolt; break; case "Fireball": SPRJT = Projectile.projectile_type.Fireball; break; case "Lightning_Bolt": SPRJT = Projectile.projectile_type.Lightning_Bolt; break; case "Bonespear": SPRJT = Projectile.projectile_type.Bonespear; break; case "Bloody_AcidCloud": SPRJT = Projectile.projectile_type.Bloody_AcidCloud; break; } Projectile.special_anim SSPFX = 0; switch (rs.SpecialAnimation) { case "BloodAcid": SSPFX = Projectile.special_anim.BloodAcid; break; case "Alert": SSPFX = Projectile.special_anim.Alert; break; case "Earthquake": SSPFX = Projectile.special_anim.Earthquake; break; case "None": SSPFX = Projectile.special_anim.None; break; case "Blank": SSPFX = Projectile.special_anim.Blank; break; } Scroll.Status_Type SBFDB = 0; switch (rs.SpellSpecialEffect) { case "Anosmia": SBFDB = Scroll.Status_Type.Anosmia; break; case "Blind": SBFDB = Scroll.Status_Type.Blind; break; case "Deaf": SBFDB = Scroll.Status_Type.Deaf; break; case "LynxFer": SBFDB = Scroll.Status_Type.LynxFer; break; case "PantherFer": SBFDB = Scroll.Status_Type.PantherFer; break; case "TigerFer": SBFDB = Scroll.Status_Type.TigerFer; break; } int SBDDR = rs.SpecialEffectDuration; return(new Scroll(SIDNO, SCOST, SNAME, STIER, SMANA, SRANG, SAESZ, SMNDM, SMADM, SMLSP, SAETP, SPRJT, SDMTP, SDSWL, SCHIP, SBFDB, SBDDR, SSPFX)); }