339 lines
5.1 KiB
C#
339 lines
5.1 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
using RuntimeData;
|
|
using Logic.Multilingual;
|
|
|
|
public enum CivLibrary
|
|
{
|
|
Egyptian,
|
|
French,
|
|
Germany,
|
|
Indian,
|
|
Norway,
|
|
British,
|
|
Persian,
|
|
Byzantine
|
|
}
|
|
|
|
public enum CityLibrary
|
|
{
|
|
//以下是埃及城市
|
|
Cairo,
|
|
Alexandria,
|
|
Memphis,
|
|
Thebes,
|
|
Luxor,
|
|
Aswan,
|
|
AbuSimbel,
|
|
Giza,
|
|
Sinai,
|
|
Dendera,
|
|
Edfu,
|
|
KomOmbo,
|
|
Heliopolis,
|
|
Suez,
|
|
TenthOfRamadanCity,
|
|
Tura,
|
|
Amarna,
|
|
Tanis,
|
|
Bubastis,
|
|
Abydos,
|
|
Arsinoe,
|
|
Faiyum,
|
|
BeniSuef,
|
|
Minya,
|
|
Sohag,
|
|
Asyut,
|
|
Qalyubiyya,
|
|
Hurghada,
|
|
ElAlamein,
|
|
MersaMatruh,
|
|
//以下是法国城市
|
|
Paris,
|
|
Versailles,
|
|
Lyon,
|
|
Marseille,
|
|
Bordeaux,
|
|
Toulouse,
|
|
Lille,
|
|
Nantes,
|
|
Strasbourg,
|
|
Nice,
|
|
Dijon,
|
|
Rouen,
|
|
Reims,
|
|
Orleans,
|
|
Tours,
|
|
Avignon,
|
|
Metz,
|
|
Nancy,
|
|
Amiens,
|
|
Caen,
|
|
Limoges,
|
|
Poitiers,
|
|
ClermontFerrand,
|
|
Besancon,
|
|
Brest,
|
|
Perpignan,
|
|
AixEnProvence,
|
|
SaintEtienne,
|
|
LeHavre,
|
|
Calais,
|
|
//以下是德国城市
|
|
Berlin,
|
|
Konigsberg,
|
|
Potsdam,
|
|
Magdeburg,
|
|
Hamburg,
|
|
Bremen,
|
|
Dresden,
|
|
Leipzig,
|
|
Munich,
|
|
Nuremberg,
|
|
Cologne,
|
|
Frankfurt,
|
|
Stuttgart,
|
|
Heidelberg,
|
|
Hanover,
|
|
Essen,
|
|
Dusseldorf,
|
|
Augsburg,
|
|
Mainz,
|
|
Lübeck,
|
|
Rostock,
|
|
Regensburg,
|
|
Freiburg,
|
|
Trier,
|
|
Erfurt,
|
|
Weimar,
|
|
Darmstadt,
|
|
Wiesbaden,
|
|
Kiel,
|
|
Schwerin,
|
|
//以下是印度
|
|
Delhi,
|
|
NewDelhi,
|
|
Varanasi,
|
|
Patna,
|
|
Pataliputra,
|
|
Ayodhya,
|
|
Mathura,
|
|
Kanpur,
|
|
Agra,
|
|
Lucknow,
|
|
Jaipur,
|
|
Ujjain,
|
|
Indore,
|
|
Bhopal,
|
|
Ahmedabad,
|
|
Mumbai,
|
|
Pune,
|
|
Nagpur,
|
|
Surat,
|
|
Vadodara,
|
|
Hyderabad,
|
|
Warangal,
|
|
Bengaluru,
|
|
Mysore,
|
|
Chennai,
|
|
Madurai,
|
|
Thanjavur,
|
|
Kolkata,
|
|
Bhubaneswar,
|
|
Srinagar,
|
|
//挪威城市
|
|
Oslo,
|
|
Bergen,
|
|
Trondheim,
|
|
Stavanger,
|
|
Tromso,
|
|
Kristiansand,
|
|
Drammen,
|
|
Fredrikstad,
|
|
Skien,
|
|
Bodo,
|
|
Haugesund,
|
|
Arendal,
|
|
Molde,
|
|
Lillehammer,
|
|
Hamar,
|
|
Gjovik,
|
|
Alta,
|
|
Narvik,
|
|
Sandefjord,
|
|
Alesund,
|
|
Tonsberg,
|
|
Halden,
|
|
Moss,
|
|
Honefoss,
|
|
Kongsberg,
|
|
Elverum,
|
|
Steinkjer,
|
|
Levanger,
|
|
Voss,
|
|
Forde,
|
|
//英国城市
|
|
London,
|
|
Birmingham,
|
|
Manchester,
|
|
Liverpool,
|
|
Leeds,
|
|
Sheffield,
|
|
Bristol,
|
|
Newcastle,
|
|
Nottingham,
|
|
Southampton,
|
|
Leicester,
|
|
Portsmouth,
|
|
York,
|
|
Cambridge,
|
|
Oxford,
|
|
Exeter,
|
|
Cardiff,
|
|
Glasgow,
|
|
Edinburgh,
|
|
Belfast,
|
|
Swansea,
|
|
Dundee,
|
|
Aberdeen,
|
|
Londonderry,
|
|
Inverness,
|
|
Carlisle,
|
|
Bath,
|
|
Norwich,
|
|
Reading,
|
|
Plymouth,
|
|
//波斯城市
|
|
Persepolis,
|
|
Susa,
|
|
Ecbatana,
|
|
Pasargadae,
|
|
Rhagae,
|
|
Istakhr,
|
|
Shiraz,
|
|
Isfahan,
|
|
Tehran,
|
|
Tabriz,
|
|
Mashhad,
|
|
Qom,
|
|
Hamadan,
|
|
Kerman,
|
|
Yazd,
|
|
Ahvaz,
|
|
BandarAbbas,
|
|
Kermanshah,
|
|
Zanjan,
|
|
Sabzevar,
|
|
Neyshabur,
|
|
Qazvin,
|
|
Karaj,
|
|
Arak,
|
|
Borujerd,
|
|
Sanandaj,
|
|
Rasht,
|
|
Ardabil,
|
|
Kashan,
|
|
Bushehr,
|
|
//拜占庭
|
|
Constantinople,
|
|
Nicaea,
|
|
Antioch,
|
|
Thessalonica,
|
|
Trebizond,
|
|
Ephesus,
|
|
Smyrna,
|
|
Heraclea,
|
|
Adrianople,
|
|
Nicomedia,
|
|
Chalcedon,
|
|
Caesarea,
|
|
Rhodes,
|
|
Corinth,
|
|
Athens,
|
|
Dyrrachium,
|
|
ThebesByzantine,
|
|
Laodicea,
|
|
Ancyra,
|
|
Amasea,
|
|
Mystras,
|
|
Philippi,
|
|
Nysa,
|
|
Tyana,
|
|
Pergamon,
|
|
Iconium,
|
|
Miletus,
|
|
Tralles,
|
|
Seleucia,
|
|
Cyrene
|
|
}
|
|
|
|
|
|
|
|
[Serializable]
|
|
[CreateAssetMenu(fileName = "CivDataAssets", menuName = "TH1 Game Data/Civ Data Asset")]
|
|
public class CivDataAssets : ScriptableObject
|
|
{
|
|
public List<CivInfo> CivDataList = new List<CivInfo>();
|
|
[NonSerialized]
|
|
private bool _initialized = false;
|
|
|
|
public bool GetCivInfo(CivEnum civEnum, out CivInfo info)
|
|
{
|
|
return GetCivInfo(Table.Instance.TransCivEnumToCivId(civEnum),out info);
|
|
}
|
|
|
|
public bool GetCivInfo(uint CivId,out CivInfo info)
|
|
{
|
|
info = null;
|
|
foreach (var t in CivDataList)
|
|
{
|
|
if (t.CivId == CivId)
|
|
{
|
|
info = t;
|
|
return true;
|
|
}
|
|
}
|
|
return false;
|
|
}
|
|
|
|
public bool GetCityInfo(CityLibrary cityNameEnum, out CityInfo cityInfo)
|
|
{
|
|
foreach (var civ in CivDataList)
|
|
{
|
|
foreach (var city in civ.CityInfoList)
|
|
if (city.CityNameEnum == cityNameEnum)
|
|
{
|
|
cityInfo = city;
|
|
return true;
|
|
}
|
|
}
|
|
Debug.Log("Cant Find City!!!!!");
|
|
Debug.Log(cityNameEnum);
|
|
cityInfo = null;
|
|
return false;
|
|
}
|
|
|
|
}
|
|
|
|
[Serializable]
|
|
public class CivInfo
|
|
{
|
|
public uint CivId;
|
|
public CivLibrary Civ;
|
|
[MultilingualField]
|
|
public string CivName;
|
|
public List<CityInfo> CityInfoList;
|
|
}
|
|
|
|
[Serializable]
|
|
public class CityInfo
|
|
{
|
|
public uint CivId;
|
|
public CityLibrary CityNameEnum;
|
|
[MultilingualField]
|
|
public string CityName;
|
|
[MultilingualField]
|
|
public string CityDescription;
|
|
|
|
} |