public game_item RandomItem(SpriteGender gender, item_rarity.rarity rarity) { item_type t = item_type.consumable; int chance = 0; foreach (item_type type in Enum.GetValues(typeof(item_type))) { try { if (Game_Items[gender][type].Count <= 0) { continue; } int temp = InGameData.random_int(0, 100); if (temp > chance) { chance = temp; t = type; } } catch { } } return(GetItemFrom(gender, t, rarity).CopyItem()); }
public void LoadJson() { GetDataPath(); string basicData = System.IO.File.ReadAllText(path); data = JsonUtility.FromJson <InGameData>(basicData); lists = data.lists; }
private void Awake() { if (Instance == null) { Instance = this; Init(); } else { Destroy(this.gameObject); } }
public List <Body_part> GetPerson(SpriteGender gender, Skin_type type) { List <Body_part> ret = new List <Body_part>(); foreach (body_part p in Enum.GetValues(typeof(body_part))) { int random = InGameData.random_int(0, body_parts[gender][type][p].Count); try { ret.Add(body_parts[gender][type][p][random]); } catch {} } return(ret); }
public game_item GetItemFrom(SpriteGender gender, item_type type, item_rarity.rarity rarity) { int chance = 0; game_item ret = null; foreach (game_item item in Game_Items[gender][type].Values) { if (item.rarity.Rarity == rarity) { int temp = InGameData.random_int(0, 100); if (temp >= chance) { chance = temp; ret = item; } } } if (ret == null) { Debug.Log(" No Items in " + gender + " ," + type + " with rarity " + rarity); } return(ret); }
private void Awake() { Instance = this; playerData = new PlayerData(); LocalSave.Instance.LoadGame(); }
private void CreateItems(SpriteData sd) { bool IsArmor = (sd.path.Contains("armor")) ? true : false; bool IsWeapon = (sd.path.Contains("weapons")) ? true : false; int MaxValue = (IsArmor) ? 14 : IsArmor ? 20 : 6; if (sd.path.Contains("walk_melee_weapons")) { walk_anim = new game_item(item_type.none, sd.id, sd.sg, 0, sd.name, Basic_Stats.zero, UseBoost.zero, item_rarity.rarity.normal, false); return; } foreach (item_type type in Enum.GetValues(typeof(item_type))) { if (sd.key.Contains(type.ToString())) { foreach (item_rarity.rarity rare in Enum.GetValues(typeof(item_rarity.rarity))) { if (!IsWeapon && !IsArmor && rare != item_rarity.rarity.normal) { continue; } Basic_Stats stats = new Basic_Stats(); UseBoost pstats = UseBoost.zero; stats.agility = InGameData.rand(0, MaxValue); stats.endurance = InGameData.rand(0, MaxValue); stats.strength = InGameData.rand(0, MaxValue); if (sd.path.Contains("small_range")) { pstats.range = 2f; } else if (sd.path.Contains("normal_range")) { pstats.range = 10f; } else if (sd.path.Contains("large_range")) { pstats.range = 15f; } else if (type == item_type.wand) { pstats.range = 75.0f; } else if (type == item_type.bow) { pstats.range = 75.0f; } else { pstats.range = 0; } stats.intelligence = InGameData.rand(0, MaxValue); pstats.walk_speed = InGameData.rand(0, MaxValue); game_item NEW_item = new game_item(type, sd.id, sd.sg, Game_Items[sd.sg][type].Count, sd.name, stats, pstats, rare, IsArmor); if (sd.sg == SpriteGender.none) { Game_Items[SpriteGender.male][type].Add(NEW_item.Order_ID, NEW_item); Game_Items[SpriteGender.female][type].Add(NEW_item.Order_ID, NEW_item); } Game_Items[sd.sg][type].Add(NEW_item.Order_ID, NEW_item); } break; } } }
public int getRandomFromCatergory(string catergory) { int[] ret = ct_to_id[catergory]; return(InGameData.random_int(ret[0], ret[1])); }
public List <game_item> GetRandomGear(SpriteGender gender, item_rarity.rarity rarity) { List <game_item> ret = new List <game_item>(); float Weapon = 0; item_type weap = item_type.none; foreach (item_type type in Enum.GetValues(typeof(item_type))) { if ((int)type <= 0) { continue; } try { if (type == item_type.melee_weapons || type == item_type.spears || type == item_type.wand || type == item_type.bow) { float t = InGameData.rand(0, 100); if (t > Weapon) { Weapon = t; weap = type; } continue; } else if (type == item_type.shilds || type == item_type.arrows) { continue; } if (InGameData.random_int(0, 32) % 8 == 3) { continue; } game_item ti = GetItemFrom(gender, type, rarity); if (ti != null) { ret.Add(GetItemFrom(gender, type, rarity).CopyItem()); } } catch { } } int temp2 = Game_Items[gender][weap].Count; int rand2 = InGameData.random_int(0, temp2); ret.Add(GetItemFrom(gender, weap, rarity).CopyItem()); if (weap == item_type.bow) { ret.Add(GetItemFrom(gender, item_type.arrows, rarity).CopyItem()); } else if (weap == item_type.melee_weapons || weap == item_type.spears) { if (InGameData.random_int(0, 32) % 8 == 3) { return(ret); } ret.Add(GetItemFrom(gender, item_type.shilds, rarity).CopyItem()); } return(ret); }
public List <game_item> GetRandomGear(SpriteGender gender) { List <game_item> ret = new List <game_item>(); float Weapon = 0; item_type weap = item_type.none; foreach (item_type type in Enum.GetValues(typeof(item_type))) { if ((int)type <= 0) { continue; } try { if (type == item_type.melee_weapons || type == item_type.spears || type == item_type.wand || type == item_type.bow) { float t = InGameData.rand(0, 100); if (t > Weapon) { Weapon = t; weap = type; } continue; } else if (type == item_type.shilds || type == item_type.arrows) { continue; } int temp = Game_Items[gender][type].Count; int rand = InGameData.random_int(0, (int)(temp * 1.5f)); if (rand > temp) { continue; } ret.Add(Game_Items[gender][type][rand].CopyItem()); } catch { } } int temp2 = Game_Items[gender][weap].Count; int rand2 = InGameData.random_int(0, temp2); ret.Add(Game_Items[gender][weap][rand2].CopyItem()); if (weap == item_type.bow) { ret.Add(Game_Items[gender][item_type.arrows][0].CopyItem()); } else if (weap == item_type.melee_weapons || weap == item_type.spears) { temp2 = Game_Items[gender][item_type.shilds].Count; rand2 = InGameData.random_int(0, temp2 * 2); if (rand2 > temp2) { return(ret); } ret.Add(Game_Items[gender][weap][rand2].CopyItem()); } return(ret); }
public List <Body_part> GetRandomPerson(SpriteGender gender) { Skin_type skin = (Skin_type)InGameData.random_int(0, 9); return(GetPerson(gender, skin)); }