mirror of
https://github.com/yairm210/Unciv.git
synced 2025-07-13 17:28:57 +07:00
Added education buildings
This commit is contained in:
Binary file not shown.
@ -64,7 +64,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Name":"Oracle",
|
"Name":"Oracle",
|
||||||
"Description": "Provides a free social policy - HOW????",
|
"Description": "Provides a free social policy - todo",
|
||||||
"Culture":3,
|
"Culture":3,
|
||||||
"IsWonder":true,
|
"IsWonder":true,
|
||||||
"RequiredTech":"Philosophy"
|
"RequiredTech":"Philosophy"
|
||||||
@ -135,7 +135,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Name":"Machu Pichu",
|
"Name":"Machu Pichu",
|
||||||
"Description": "Gold from all trade routes +25%. Can only be built on cities with mountain in range of 2 tiles - this is a problem!",
|
"Description": "Gold from all trade routes +25%. Can only be built on cities with mountain in range of 2 tiles - todo",
|
||||||
"Gold":5,
|
"Gold":5,
|
||||||
"Culture":1,
|
"Culture":1,
|
||||||
"IsWonder":true,
|
"IsWonder":true,
|
||||||
@ -143,7 +143,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Name":"Aqueduct",
|
"Name":"Aqueduct",
|
||||||
"Description": "40% of food is carried over after a new citizen is born - HOW?!?!?!",
|
"Description": "40% of food is carried over after a new citizen is born - TODO",
|
||||||
"Maintainance":1,
|
"Maintainance":1,
|
||||||
"Food":2,
|
"Food":2,
|
||||||
"RequiredTech":"Engineering"
|
"RequiredTech":"Engineering"
|
||||||
@ -163,5 +163,32 @@
|
|||||||
"ResourceRequired":true,
|
"ResourceRequired":true,
|
||||||
"ResourceBonusStats":{"Production":1},
|
"ResourceBonusStats":{"Production":1},
|
||||||
"RequiredTech":"Metal Casting"
|
"RequiredTech":"Metal Casting"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Name":"University",
|
||||||
|
"Description": "Jungles provide +2 science",
|
||||||
|
"Maintainance":2,
|
||||||
|
"PercentStatBonus":{"Science":33},
|
||||||
|
"RequiredBuilding":"Library",
|
||||||
|
"RequiredTech":"Metal Casting"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Name":"Oxford University",
|
||||||
|
"Description": "+50% science from this city",
|
||||||
|
"Science":3,
|
||||||
|
"Culture":1,
|
||||||
|
"FreeTechs":1,
|
||||||
|
"IsWonder":true,
|
||||||
|
"RequiredBuildingInAllCities":"University",
|
||||||
|
"RequiredTech":"Education"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Name":"Angkor Wat",
|
||||||
|
"Description": "Cost of aquiring new tiles reduced by 25% - TODO",
|
||||||
|
"Culture":1,
|
||||||
|
"IsWonder":true,
|
||||||
|
"NewTileCostReduction":25,
|
||||||
|
"RequiredTech":"Education"
|
||||||
}
|
}
|
||||||
|
|
||||||
]
|
]
|
@ -101,7 +101,7 @@
|
|||||||
"Name":"Mathematics",
|
"Name":"Mathematics",
|
||||||
"Row":7,
|
"Row":7,
|
||||||
"Prerequisites":["The Wheel"],
|
"Prerequisites":["The Wheel"],
|
||||||
"Description": "Serves as a stepping stone to other technologies. Also enables construction of the Hanging Gardens wonder."
|
"Description": "Enables construction of the Hanging Gardens wonder."
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Name":"Construction",
|
"Name":"Construction",
|
||||||
@ -172,7 +172,7 @@
|
|||||||
"Name":"Education",
|
"Name":"Education",
|
||||||
"Row":3,
|
"Row":3,
|
||||||
"Prerequisites":["Theology","Civil Service"],
|
"Prerequisites":["Theology","Civil Service"],
|
||||||
"Description":"???"
|
"Description":"Allows cities to convert production to science, construction of Universities which provide science, and construction of the Angkor Wat wonder"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Name":"Chivalry",
|
"Name":"Chivalry",
|
||||||
|
@ -21,8 +21,8 @@ android {
|
|||||||
applicationId "com.unciv.game"
|
applicationId "com.unciv.game"
|
||||||
minSdkVersion 9
|
minSdkVersion 9
|
||||||
targetSdkVersion 25
|
targetSdkVersion 25
|
||||||
versionCode 3
|
versionCode 4
|
||||||
versionName "1.0"
|
versionName "0.9"
|
||||||
}
|
}
|
||||||
buildTypes {
|
buildTypes {
|
||||||
release {
|
release {
|
||||||
|
@ -3,6 +3,7 @@ package com.unciv.civinfo;
|
|||||||
import com.badlogic.gdx.math.Vector2;
|
import com.badlogic.gdx.math.Vector2;
|
||||||
import com.badlogic.gdx.utils.Predicate;
|
import com.badlogic.gdx.utils.Predicate;
|
||||||
import com.unciv.game.UnCivGame;
|
import com.unciv.game.UnCivGame;
|
||||||
|
import com.unciv.models.LinqCollection;
|
||||||
import com.unciv.models.gamebasics.Building;
|
import com.unciv.models.gamebasics.Building;
|
||||||
import com.unciv.models.gamebasics.GameBasics;
|
import com.unciv.models.gamebasics.GameBasics;
|
||||||
import com.unciv.models.stats.FullStats;
|
import com.unciv.models.stats.FullStats;
|
||||||
@ -25,7 +26,7 @@ public class CityBuildings
|
|||||||
cityLocation = cityInfo.cityLocation;
|
cityLocation = cityInfo.cityLocation;
|
||||||
}
|
}
|
||||||
|
|
||||||
public ArrayList<String> BuiltBuildings = new ArrayList<String>();
|
public LinqCollection<String> BuiltBuildings = new LinqCollection<String>();
|
||||||
public HashMap<String, Integer> InProgressBuildings = new HashMap<String, Integer>();
|
public HashMap<String, Integer> InProgressBuildings = new HashMap<String, Integer>();
|
||||||
public String CurrentBuilding = Worker; // default starting building!
|
public String CurrentBuilding = Worker; // default starting building!
|
||||||
|
|
||||||
@ -34,6 +35,12 @@ public class CityBuildings
|
|||||||
public boolean IsBuilding(String buildingName) { return CurrentBuilding.equals(buildingName); }
|
public boolean IsBuilding(String buildingName) { return CurrentBuilding.equals(buildingName); }
|
||||||
|
|
||||||
Building GetGameBuilding(String buildingName) { return GameBasics.Buildings.get(buildingName); }
|
Building GetGameBuilding(String buildingName) { return GameBasics.Buildings.get(buildingName); }
|
||||||
|
public LinqCollection<Building> GetBuiltBuildings(){ return BuiltBuildings.select(new LinqCollection.Func<String, Building>() {
|
||||||
|
@Override
|
||||||
|
public Building GetBy(String arg0) {
|
||||||
|
return GetGameBuilding(arg0);
|
||||||
|
}
|
||||||
|
}); }
|
||||||
|
|
||||||
public void NextTurn(int ProductionProduced)
|
public void NextTurn(int ProductionProduced)
|
||||||
{
|
{
|
||||||
@ -94,7 +101,7 @@ public class CityBuildings
|
|||||||
@Override
|
@Override
|
||||||
public boolean evaluate(CityInfo arg0) {
|
public boolean evaluate(CityInfo arg0) {
|
||||||
CityBuildings CB = arg0.cityBuildings;
|
CityBuildings CB = arg0.cityBuildings;
|
||||||
return CB.IsBuilt(building.Name) || CB.IsBuilt(building.Name);
|
return CB.IsBuilding(building.Name) || CB.IsBuilt(building.Name);
|
||||||
}
|
}
|
||||||
}) ) return false;
|
}) ) return false;
|
||||||
if (building.RequiredBuilding != null && !IsBuilt(building.RequiredBuilding)) return false;
|
if (building.RequiredBuilding != null && !IsBuilt(building.RequiredBuilding)) return false;
|
||||||
|
@ -5,6 +5,7 @@ import com.badlogic.gdx.utils.Predicate;
|
|||||||
import com.unciv.game.HexMath;
|
import com.unciv.game.HexMath;
|
||||||
import com.unciv.game.UnCivGame;
|
import com.unciv.game.UnCivGame;
|
||||||
import com.unciv.models.LinqCollection;
|
import com.unciv.models.LinqCollection;
|
||||||
|
import com.unciv.models.gamebasics.Building;
|
||||||
import com.unciv.models.gamebasics.ResourceType;
|
import com.unciv.models.gamebasics.ResourceType;
|
||||||
import com.unciv.models.gamebasics.TileResource;
|
import com.unciv.models.gamebasics.TileResource;
|
||||||
import com.unciv.models.stats.FullStats;
|
import com.unciv.models.stats.FullStats;
|
||||||
|
@ -1,14 +1,18 @@
|
|||||||
package com.unciv.models.gamebasics;
|
package com.unciv.models.gamebasics;
|
||||||
|
|
||||||
|
import com.unciv.models.LinqHashMap;
|
||||||
|
import com.unciv.models.stats.FullStats;
|
||||||
import com.unciv.models.stats.NamedStats;
|
import com.unciv.models.stats.NamedStats;
|
||||||
|
|
||||||
|
import java.util.Dictionary;
|
||||||
|
|
||||||
public class Building extends NamedStats implements ICivilopedia {
|
public class Building extends NamedStats implements ICivilopedia {
|
||||||
public String Description;
|
public String Description;
|
||||||
public String RequiredTech;
|
public String RequiredTech;
|
||||||
public Technology GetRequiredTech(){return GameBasics.Technologies.get(RequiredTech);}
|
public Technology GetRequiredTech(){return GameBasics.Technologies.get(RequiredTech);}
|
||||||
public int Cost;
|
public int Cost;
|
||||||
public int Maintainance = 0;
|
public int Maintainance = 0;
|
||||||
public com.unciv.models.stats.FullStats PercentStatBonus = new com.unciv.models.stats.FullStats();
|
public FullStats PercentStatBonus = new FullStats();
|
||||||
//public Func<CityInfo,FullStats> GetFlatBonusStats;
|
//public Func<CityInfo,FullStats> GetFlatBonusStats;
|
||||||
public boolean IsWonder = false;
|
public boolean IsWonder = false;
|
||||||
public boolean ResourceRequired = false;
|
public boolean ResourceRequired = false;
|
||||||
@ -18,13 +22,13 @@ public class Building extends NamedStats implements ICivilopedia {
|
|||||||
// Uniques
|
// Uniques
|
||||||
public String ProvidesFreeBuilding;
|
public String ProvidesFreeBuilding;
|
||||||
public int FreeTechs;
|
public int FreeTechs;
|
||||||
|
public int NewTileCostReduction;
|
||||||
|
|
||||||
/** The bonus stats that a resource gets when this building is built */
|
/** The bonus stats that a resource gets when this building is built */
|
||||||
public com.unciv.models.stats.FullStats ResourceBonusStats;
|
public FullStats ResourceBonusStats;
|
||||||
|
|
||||||
public String GetDescription() {
|
public String GetDescription() {
|
||||||
com.unciv.models.stats.FullStats stats = new com.unciv.models.stats.FullStats(this);
|
FullStats stats = new FullStats(this);
|
||||||
StringBuilder stringBuilder = new StringBuilder();
|
StringBuilder stringBuilder = new StringBuilder();
|
||||||
if(IsWonder) stringBuilder.append("Wonder\r\n");
|
if(IsWonder) stringBuilder.append("Wonder\r\n");
|
||||||
stringBuilder.append(Description + "\r\n" + stats);
|
stringBuilder.append(Description + "\r\n" + stats);
|
||||||
|
Reference in New Issue
Block a user