public static string FactionField(string faction, string name = "Faction") { FactionDatabase db = FactionDatabase.Get; int id; if (!db || (id = FactionDatabase.FindId(faction)) == -1) { return(String.IsNullOrEmpty(faction)? FactionDatabase.NO_FACTION : faction); } int index = EditorGUILayout.Popup(name, id, db.factions); return(db.factions[index]); }
internal static void Load(object sender, EventArgs e) { var neutral = FactionDatabase.AddFaction(FactionStrings.Independent); neutral.SetDescription(FactionStrings.IndependentDesc); neutral.SetColor(128, 128, 128); neutral.Playable = true; var human = FactionDatabase.AddFaction(FactionStrings.HuNav); human.SetDescription(FactionStrings.HuNavDesc); human.SetColor(255, 255, 255); human.Playable = true; var kraylor = FactionDatabase.AddFaction(FactionStrings.Kraylor); kraylor.SetDescription(FactionStrings.KraylorDesc); kraylor.SetColor(255, 0, 0); kraylor.SetRelationShip(human, FactionInfo.Relations.Hostile, true); var arlenians = FactionDatabase.AddFaction(FactionStrings.Arlenian); arlenians.SetDescription(FactionStrings.ArlenianDesc); arlenians.SetColor(255, 128, 0); arlenians.SetRelationShip(kraylor, FactionInfo.Relations.Hostile, true); var exuari = FactionDatabase.AddFaction(FactionStrings.Exuari); exuari.SetDescription(FactionStrings.ExuariDesc); exuari.SetColor(255, 0, 128); exuari.SetRelationShip(neutral, FactionInfo.Relations.Hostile, true); exuari.SetRelationShip(human, FactionInfo.Relations.Hostile, true); exuari.SetRelationShip(kraylor, FactionInfo.Relations.Hostile, true); exuari.SetRelationShip(arlenians, FactionInfo.Relations.Hostile, true); var GITM = FactionDatabase.AddFaction(FactionStrings.Ghosts); GITM.SetDescription(FactionStrings.GhostsDesc); GITM.SetColor(0, 255, 0); GITM.SetRelationShip(human, FactionInfo.Relations.Hostile, true); var Hive = FactionDatabase.AddFaction(FactionStrings.Ktlitan); Hive.SetDescription(FactionStrings.KtlitansDesc); Hive.SetColor(128, 255, 0); Hive.SetRelationShip(human, FactionInfo.Relations.Hostile, true); Hive.SetRelationShip(kraylor, FactionInfo.Relations.Hostile, true); Hive.SetRelationShip(exuari, FactionInfo.Relations.Hostile, true); }
void LoadDatabase() { itemdb = ScriptableObject.CreateInstance <ItemDatabase>(); conddb = ScriptableObject.CreateInstance <AuraDatabase>(); perkdb = ScriptableObject.CreateInstance <PerkDatabase>(); skilldb = ScriptableObject.CreateInstance <SkillDatabase>(); npcdb = ScriptableObject.CreateInstance <NPCDatabase>(); factiondb = ScriptableObject.CreateInstance <FactionDatabase>(); itemdb.ReloadDatabase(); conddb.ReloadDatabase(); perkdb.ReloadDatabase(); skilldb.ReloadDatabase(); npcdb.ReloadDatabase(); factiondb.ReloadDatabase(); }
private void Awake() { factionDB = FactionManager.Instance.factionDB; // check if our faction even exists (in case we have a designing error) bool factionExists = false; for (int i = 0; i < factionDB.factions.Count; i++) { if (factionDB.factions[i].name == factionName) { factionExists = true; break; } } if (!factionExists) { Debug.LogError("The specified faction doesn't exist!"); } }