public static Character Player_Login(string userId, string userPass) { int user_Index = database.do_Login(userId, userPass); if (user_Index != -1) { _player = database.do_LoadCharacter(user_Index); return _player; } return null; }
public void Start_Combat(Monster _mob, Character _char, Weapon _weap, RichTextBox myLabel) { this.mob = _mob; this.player = _char; this.Weapon_Min_Damage = _weap.Min_Damage; this.Weapon_Max_Damage = _weap.Max_Damage; rtBox = myLabel; //Player Attack Mob int tempIncDmg = 0; tempIncDmg = Damage_Dealt(); mob.CurrentHP -= tempIncDmg; DamageOutPut("Damage Dealt : " + tempIncDmg.ToString() + "\r\n", 0); if (mob.CurrentHP > 0 && _roundNumber != MAX_ROUND) { _roundNumber++; } else if (mob.CurrentHP <= 0) { DamageOutPut("You killed : " + mob.Name + " in " + _roundNumber.ToString() + " round(s)" + "\r\n", 4); WinLose = true; InCombat = false; _roundNumber = 0; return; } //Mob Attack player int tempOutDmg = 0; tempOutDmg = Damage_Taken(); player.Player_Current_Health -= tempOutDmg; DamageOutPut("Damage Taken : " + tempOutDmg.ToString() + "\r\n", 1); if (player.Player_Current_Health > 0 && _roundNumber != MAX_ROUND) { _roundNumber++; } else if (player.Player_Current_Health <= 0) { DamageOutPut("You were killed by " + mob.Name + "\r\n", 5); WinLose = false; InCombat = false; _roundNumber = 0; return; } DamageOutPut("Round : " + _roundNumber.ToString() + "\r\n", 2); }
public void doMyLogin() { try { _player = World.Player_Login(unameBox.Text, pwordBox.Text); if (_player != null && _player.Character_Name != "NOCHAR") { tabControl1.TabPages.Insert(1, mainUIPage); Moveto(World.LocationByID(World.LOCATION_INDEX_HOME)); tabControl1.TabPages.Remove(logintabPage); tabControl1.SelectedTab = mainUIPage; } #if DEVELOPMENT else if (_player.Character_Name == "NOCHAR") { tabControl1.TabPages.Insert(1, selcrePage); tabControl1.TabPages.Remove(logintabPage); tabControl1.SelectedTab = selcrePage; } #endif else if (_player == null) { MessageBox.Show("SMain : Could not find Character!"); logging.Logging("SMain : Could not find character!"); } } catch (Exception ex) { MessageBox.Show("SMain : " + ex.ToString()); logging.Logging(String.Format("SMain {0}", ex)); } }
public void RemoveItemFromInventory(Character player, Item itemstoRemove, int howMany) { foreach(Inventory ii in player.Inventory) { //check if player has item in inventory if (ii.Details.Index == itemstoRemove.Index) { //check if quantity more or equal to how many to remove if (ii.Quantity > howMany) { //remove howmany from item quantity ii.Quantity = ii.Quantity - howMany; return; } else if (ii.Quantity == howMany) { player.Inventory.Remove(ii); } } } }
public void RemoveItemFromInventory(Character player, Item itemtoRemove) { foreach(Inventory ii in player.Inventory) { if (ii.Details.Index == itemtoRemove.Index) { //if 1 or more if (ii.Quantity > 0) { ii.Quantity--; if (ii.Quantity == 0) player.Inventory.Remove(ii); return; } else { player.Inventory.Remove(ii); } } } }
public void AddItemToInventory(Character player, Item itemstoAdd, int howMany) { bool foundItem = false; foreach (Inventory ii in player.Inventory) { if (ii.Details.Index == itemstoAdd.Index) { foundItem = true; ii.Quantity = ii.Quantity + howMany; } // If not currently in inventory add it. } int itemCount = Inventory.Count; if (!foundItem) player.Inventory.Add(new Inventory(itemstoAdd, howMany, itemCount + 1)); }
public Character do_Load_Inventory(Character player, int charIdx) { /* TODO: Get default item values. Compare default item values with values from dev_char_inventory. If there's a difference, change the item values according to the values set in dev_char_inventory. Add the modified item to players inventory. */ player.Inventory = new List<Inventory>(); string sql = "SELECT * FROM dev_char_inventory WHERE a_char_idx=" + charIdx + ";"; logging.Logging(String.Format("DBManager : Loading Player {0} Inventory items", _Player.Character_Name)); if (charIdx > 0) { command = new MySqlCommand(sql, connection); reader = command.ExecuteReader(); if (reader != null) { while (reader.Read()) { Char_Index = Convert.ToInt32(reader["a_char_idx"]); Item_Index = Convert.ToInt32(reader["a_item_idx"]); Item_Type = Convert.ToInt32(reader["a_item_type"]); Item_Quantity = Convert.ToInt32(reader["a_quantity"]); Item_Upgrade_Type = Convert.ToInt32(reader["a_upgradeType"]); Item_Name = reader["a_name"].ToString(); Item_Name_Plurel = reader["a_name_long"].ToString(); Item_Plus = Convert.ToInt32(reader["a_plus"]); Item_Star = Convert.ToInt32(reader["a_star"]); Item_Grade = reader["a_grade"].ToString(); CanUpgrade = Convert.ToBoolean(reader["a_canUpgrade"]); if (item_Type == 1) { Item_Min_Damage = Convert.ToInt32(reader["a_minDmg"]); Item_Max_Damage = Convert.ToInt32(reader["a_maxDmg"]); Weapon weapon = new Weapon(Item_Index,Item_Name,Item_Name_Plurel,Item_Upgrade_Type,Item_Type,Item_Plus, Item_Star,Item_Grade,Item_Min_Damage,Item_Max_Damage, CanUpgrade); player.AddItemToInventory(player, weapon); } else if (Item_Type == 9) { Amount_To_Heal = Convert.ToInt32(reader["a_amountHeal"]); Potions potion = new Potions(Item_Index, Item_Name, Item_Name_Plurel, Item_Upgrade_Type, Item_Type, Item_Plus, Item_Star, Item_Grade, Amount_To_Heal); player.AddItemToInventory(player, potion); } //Standard Item else if (Item_Type < 0) { logging.Logging(String.Format("DBManager cannot find item type {0}", Item_Type)); return null; } } reader.Close(); return player; } return null; } return null; }
public Character do_LoadCharacter(int userIdx) { logging.Logging(String.Format("DBManager : Loading Character for User : {0}", userIdx)); string sql = "SELECT * FROM dev_character WHERE a_user_idx='" + userIdx + "';"; if (_Player == null) { command = new MySqlCommand(sql, connection); reader = command.ExecuteReader(); if (reader != null) { while (reader.Read()) { if (userIdx == Convert.ToInt32(reader["a_user_idx"])) { Char_Index = Convert.ToInt32(reader["a_char_idx"]); User_Index = Convert.ToInt32(reader["a_user_idx"]); Player_Name = reader["a_char_name"].ToString(); Player_Gold = Convert.ToInt32(reader["a_gold"]); Player_Exp = Convert.ToInt32(reader["a_currentEXP"]); Player_Level = Convert.ToInt32(reader["a_level"]); Player_CurrentHP = Convert.ToInt32(reader["a_currentHP"]); Player_Max_HP = Convert.ToInt32(reader["a_maxHP"]); Player_Str = Convert.ToInt32(reader["a_str"]); Player_Vit = Convert.ToInt32(reader["a_vit"]); Player_Int = Convert.ToInt32(reader["a_int"]); Player_Wis = Convert.ToInt32(reader["a_wis"]); Player_Dex = Convert.ToInt32(reader["a_dex"]); Player_Char = Convert.ToInt32(reader["a_char"]); Character_Slot = Convert.ToInt32(reader["a_char_slot"]); _Player = new Character(User_Index,Player_Name,Char_Index,Player_Gold, player_Exp, Player_Level, Player_CurrentHP, Player_Max_HP, Player_Str, Player_Vit, Player_Int, Player_Wis, Player_Dex, Player_Char, null); _Player.Inventory = null; _Player.Character_Index = Char_Index; _Player.Character_Name = Player_Name; _Player.Gold = Player_Gold; _Player.Level_Level = Player_Level; _Player.Player_Char = Player_Char; _Player.Player_Current_Health = Player_CurrentHP; _Player.Player_Dex = Player_Dex; _Player.Player_Exp = Player_Exp; _Player.Player_Int = Player_Int; _Player.Player_Str = Player_Str; _Player.Player_Vit = Player_Vit; _Player.Player_Wis = Player_Wis; _Player.User_Index = User_Index; if (_Player.Inventory == null) { reader.Close(); _Player = do_Load_Inventory(_Player, Char_Index); return _Player; } else { reader.Close(); logging.Logging(String.Format("DBManager : Character {0} Loaded for user {0}", Player_Name, userIdx)); return _Player; } } else { logging.Logging(String.Format("DBManager : Unable to load character for user {0}", userIdx)); reader.Close(); return null; } } } logging.Logging(String.Format("DBManager : No characters connected to account")); _Player = new Character(-1, "NOCHAR", -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, null); return _Player; } return null; }