fixed ui, localization and save/load
This commit is contained in:
@@ -63,7 +63,7 @@ namespace Assets.Scripts
|
||||
{
|
||||
tiletype = tiletype.Replace("Tile", "");
|
||||
}
|
||||
coordinates.GetComponent<Text>().text = TextHandler.getText(tiletype) + "(" + (int)position.x + "/" + (int)position.y + "/" + (int)position.z + ")";
|
||||
coordinates.GetComponent<Text>().text = TextHandler.getText(tiletype.ToLower()) + "(" + (int)position.x + "/" + (int)position.y + "/" + (int)position.z + ")";
|
||||
}
|
||||
|
||||
private void switchWaterLayer()
|
||||
|
||||
@@ -276,7 +276,7 @@ namespace Assets.Scripts
|
||||
{
|
||||
result = result + "\"" + slotname + "\": \"empty\"";
|
||||
}
|
||||
if (i != 7)
|
||||
if (i != 6)
|
||||
{
|
||||
result = result + ",\r\n";
|
||||
}
|
||||
|
||||
@@ -40,7 +40,7 @@ namespace Assets.Scripts.Player
|
||||
|
||||
if (GameObject.Find("Inventory") != null)
|
||||
{
|
||||
inventory = GameObject.Find("Inventory").GetComponent<Inventory>();
|
||||
inventory = GameObject.Find("Inventory").GetComponent<Inventory>();
|
||||
}
|
||||
if (GameObject.Find("WorldGenerator") != null)
|
||||
{
|
||||
@@ -77,8 +77,8 @@ namespace Assets.Scripts.Player
|
||||
if (now.AddSeconds(10).CompareTo(DateTime.Now) <= 0)
|
||||
{
|
||||
now = DateTime.Now;
|
||||
player.regainSecondary(inventory.getEquipmentBonus()["MPR"],inventory.getEquipmentBonus()["MP"]);
|
||||
player.healPlayer(inventory.getEquipmentBonus()["HPR"],inventory.getEquipmentBonus()["HP"]);
|
||||
player.regainSecondary(inventory.getEquipmentBonus()["MPR"], inventory.getEquipmentBonus()["MP"]);
|
||||
player.healPlayer(inventory.getEquipmentBonus()["HPR"], inventory.getEquipmentBonus()["HP"]);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -128,7 +128,8 @@ namespace Assets.Scripts.Player
|
||||
player = new PlayerObject(playername, race, role, difficulty);
|
||||
}
|
||||
|
||||
public void generatePlayer(BasicRace playerRace, BasicClass playerClass, string name, int difficulty){
|
||||
public void generatePlayer(BasicRace playerRace, BasicClass playerClass, string name, int difficulty)
|
||||
{
|
||||
player = new PlayerObject(name, playerRace, playerClass, difficulty);
|
||||
}
|
||||
|
||||
@@ -213,35 +214,20 @@ namespace Assets.Scripts.Player
|
||||
}
|
||||
void OnTriggerEnter(Collider col)
|
||||
{
|
||||
if (col.gameObject.name.Contains("_"))
|
||||
if (col.name.Contains("_"))
|
||||
{
|
||||
worldGenerator.changeCurrentTile(col.gameObject);
|
||||
}
|
||||
}
|
||||
|
||||
void OnTriggerStay(Collider col)
|
||||
{
|
||||
if (col.gameObject.name.Contains("border"))
|
||||
{
|
||||
Vector3 newTile = new Vector3();
|
||||
if (col.gameObject.name.ToLower() == "bordernorth")
|
||||
{
|
||||
newTile = newTile + new Vector3(0, 0, 1);
|
||||
}
|
||||
if (col.gameObject.name.ToLower() == "bordersouth")
|
||||
{
|
||||
newTile = newTile + new Vector3(0, 0, -1);
|
||||
}
|
||||
if (col.gameObject.name.ToLower() == "bordereast")
|
||||
{
|
||||
newTile = newTile + new Vector3(1, 0, 0);
|
||||
}
|
||||
if (col.gameObject.name.ToLower() == "borderwest")
|
||||
{
|
||||
newTile = newTile + new Vector3(-1, 0, 0);
|
||||
}
|
||||
worldGenerator.createTile(newTile);
|
||||
worldGenerator.createTile(new Vector3(-1,0,-1));
|
||||
worldGenerator.createTile(new Vector3(0,0,-1));
|
||||
worldGenerator.createTile(new Vector3(1,0,-1));
|
||||
worldGenerator.createTile(new Vector3(-1,0,0));
|
||||
worldGenerator.createTile(new Vector3(1,0,0));
|
||||
worldGenerator.createTile(new Vector3(-1,0,1));
|
||||
worldGenerator.createTile(new Vector3(0,0,1));
|
||||
worldGenerator.createTile(new Vector3(1,0,1));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public void displayAction(int index, GameObject image, GameObject desc)
|
||||
@@ -316,51 +302,63 @@ namespace Assets.Scripts.Player
|
||||
}
|
||||
}
|
||||
|
||||
public PlayerStat getPlayerStat(string identifier){
|
||||
public PlayerStat getPlayerStat(string identifier)
|
||||
{
|
||||
return player.getStat(identifier);
|
||||
}
|
||||
|
||||
public void loadPlayer(JToken json){
|
||||
public void loadPlayer(JToken json)
|
||||
{
|
||||
player = new PlayerObject();
|
||||
player.loadPlayer(json);
|
||||
}
|
||||
|
||||
public PlayerObject getPlayer(){
|
||||
public PlayerObject getPlayer()
|
||||
{
|
||||
return player;
|
||||
}
|
||||
|
||||
public string saveGame(){
|
||||
public string saveGame()
|
||||
{
|
||||
return player.saveGame();
|
||||
}
|
||||
|
||||
public BasicClass getClass(){
|
||||
public BasicClass getClass()
|
||||
{
|
||||
return player.getClass();
|
||||
}
|
||||
|
||||
public BasicRace getRace(){
|
||||
public BasicRace getRace()
|
||||
{
|
||||
return player.getRace();
|
||||
}
|
||||
|
||||
public int calculateDamage(){
|
||||
public int calculateDamage()
|
||||
{
|
||||
return player.calculateDamage(inventory.getEquipmentBonus()["STR"], inventory.getEquipmentBonus()["DEX"]);
|
||||
}
|
||||
|
||||
public bool takeDamage(int amount){
|
||||
if(player != null){
|
||||
return player.takeDamage(amount,inventory.getEquipmentBonus()["DEX"], inventory.getEquipmentBonus()["INT"]);
|
||||
public bool takeDamage(int amount)
|
||||
{
|
||||
if (player != null)
|
||||
{
|
||||
return player.takeDamage(amount, inventory.getEquipmentBonus()["DEX"], inventory.getEquipmentBonus()["INT"]);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public int castSkill(int skillnumber){
|
||||
return player.castSkill(skillnumber,inventory.getEquipmentBonus()["INT"], inventory.getEquipmentBonus()["STR"], inventory.getEquipmentBonus()["DEX"]);
|
||||
public int castSkill(int skillnumber)
|
||||
{
|
||||
return player.castSkill(skillnumber, inventory.getEquipmentBonus()["INT"], inventory.getEquipmentBonus()["STR"], inventory.getEquipmentBonus()["DEX"]);
|
||||
}
|
||||
|
||||
public void reduceCooldown(int skillnumber){
|
||||
public void reduceCooldown(int skillnumber)
|
||||
{
|
||||
player.reduceCooldown(skillnumber);
|
||||
}
|
||||
|
||||
public void regainSecondary(){
|
||||
public void regainSecondary()
|
||||
{
|
||||
player.regainSecondary(inventory.getEquipmentBonus()["MPR"], inventory.getEquipmentBonus()["MP"]);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -91,6 +91,7 @@ public class Tile : MonoBehaviour
|
||||
string result = "{\r\n";
|
||||
GameObject obj;
|
||||
result = result + FileHandler.generateJSON("tiletype", "\"" + tiletype + "\"") + ",\r\n";
|
||||
result = result + FileHandler.generateJSON("tilename", "\"" + name + "\"") + ",\r\n";
|
||||
result = result + FileHandler.generateJSON("position", "\"" + position.x + "/" + position.y + "/" + position.z + "\"") + ",\r\n";
|
||||
result = result + "\"objects\": {\r\n";
|
||||
for (int i = 0; i < gameObject.transform.childCount; i++)
|
||||
|
||||
@@ -22,14 +22,13 @@ public class WorldGenerator : MonoBehaviour
|
||||
// Start is called before the first frame update
|
||||
void Start()
|
||||
{
|
||||
|
||||
createSpawn();
|
||||
}
|
||||
|
||||
private void OnEnable()
|
||||
{
|
||||
tiles = new Dictionary<Vector3, GameObject>();
|
||||
noise = new NoiseGenerator();
|
||||
createSpawn();
|
||||
cityAmount = 10;
|
||||
maxCityAmount = 10;
|
||||
}
|
||||
@@ -72,13 +71,17 @@ public class WorldGenerator : MonoBehaviour
|
||||
|
||||
public void createSpawn()
|
||||
{
|
||||
Vector3 pos = new Vector3(0, 0, 0);
|
||||
Vector3 mapPos = new Vector3(pos.x * 100, 0, pos.z * 100);
|
||||
GameObject newTile = Instantiate(tile, mapPos, Quaternion.identity);
|
||||
noise.applyNoise(newTile, tiles, pos);
|
||||
newTile.GetComponent<Tile>().generateTile(pos, (TileType)Enum.Parse(typeof(TileType), newTile.name.Split("_")[0]));
|
||||
tiles.Add(pos, newTile);
|
||||
currentTile = newTile;
|
||||
if (!tiles.ContainsKey(new Vector3(0, 0, 0)))
|
||||
{
|
||||
Vector3 pos = new Vector3(0, 0, 0);
|
||||
Vector3 mapPos = new Vector3(pos.x * 100, 0, pos.z * 100);
|
||||
GameObject newTile = Instantiate(tile, mapPos, Quaternion.identity);
|
||||
noise.applyNoise(newTile, tiles, pos);
|
||||
newTile.GetComponent<Tile>().generateTile(pos, (TileType)Enum.Parse(typeof(TileType), newTile.name.Split("_")[0]));
|
||||
tiles.Add(pos, newTile);
|
||||
currentTile = newTile;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public void createTile(Vector3 requiredPosition)
|
||||
@@ -92,7 +95,7 @@ public class WorldGenerator : MonoBehaviour
|
||||
noise.applyNoise(newTile, tiles, pos);
|
||||
newTile.GetComponent<Tile>().generateTile(pos, (TileType)Enum.Parse(typeof(TileType), newTile.name.Split("_")[0]));
|
||||
tiles.Add(pos, newTile);
|
||||
currentTile = newTile;
|
||||
//currentTile = newTile;
|
||||
GameObject.Find("QuestLog").GetComponent<QuestLog>().updateQuests("find", newTile, 1);
|
||||
}
|
||||
}
|
||||
@@ -121,15 +124,8 @@ public class WorldGenerator : MonoBehaviour
|
||||
savePath = "./save/tile" + counter + ".json";
|
||||
result = result + "\"tile" + counter + "\": \"" + savePath + "\"";
|
||||
tile.GetComponent<Tile>().saveTile(savePath);
|
||||
if (tile.GetComponent<Tile>().getTileType() == TileType.CITY)
|
||||
{
|
||||
FileHandler.saveNoise("\r\n}", savePath);
|
||||
}
|
||||
else
|
||||
{
|
||||
noise.saveTile(tile, savePath);
|
||||
}
|
||||
if (counter < tiles.Count - 2)
|
||||
noise.saveTile(tile, savePath);
|
||||
if (counter < tiles.Count - 1)
|
||||
{
|
||||
result = result + ",\r\n";
|
||||
}
|
||||
@@ -155,16 +151,10 @@ public class WorldGenerator : MonoBehaviour
|
||||
vectorParts = jsonData["position"].ToString().Split('/');
|
||||
pos = new Vector3(float.Parse(vectorParts[0]), float.Parse(vectorParts[1]), float.Parse(vectorParts[2]));
|
||||
mapPos = new Vector3(pos.x * 100, 0, pos.z * 100);
|
||||
if (jsonData["tiletype"].ToString() == "CityTile")
|
||||
{
|
||||
loadedTile = Instantiate(tile, mapPos, Quaternion.identity);
|
||||
}
|
||||
else
|
||||
{
|
||||
loadedTile = Instantiate(tile, mapPos, Quaternion.identity);
|
||||
loadedTile.GetComponent<Tile>().loadTile(jsonData, pos);
|
||||
noise.loadTile(loadedTile, jsonData["vertices"], jsonData["colors"]);
|
||||
}
|
||||
loadedTile = Instantiate(tile, mapPos, Quaternion.identity);
|
||||
loadedTile.GetComponent<Tile>().loadTile(jsonData, pos);
|
||||
noise.loadTile(loadedTile, jsonData["vertices"], jsonData["colors"]);
|
||||
loadedTile.name = jsonData["tilename"].ToString();
|
||||
tiles.Add(pos, loadedTile);
|
||||
}
|
||||
currentTile = tiles[current];
|
||||
|
||||
Reference in New Issue
Block a user