Added map #3

Merged
jracek merged 1 commits from GameClient into main 2026-03-01 20:52:29 +01:00
250 changed files with 6341 additions and 186 deletions

1
.gitignore vendored
View File

@@ -186,7 +186,6 @@ StyleCopReport.xml
*_p.c *_p.c
*_h.h *_h.h
*.ilk *.ilk
*.meta
*.obj *.obj
*.iobj *.iobj
*.pch *.pch

8
Assets/ClientSDK.meta Normal file
View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 799f52449ae21404c9a7593f6dc28c60
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: bc06bb57786c7e142b06ec231e5cf709

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 1d2251b279edb0147bd274a884ac878b

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 91e0f647c37b0b94b83f53bb854db28c

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 14463228dfea2264ebfc36c3a7dc4b99

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 80ef0979df5d1fe489225f3e5edadc5c

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 3a4035bdb812fee4f96cb1aa1b24c999
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 131d9de257c8edc49991d792c6e702f6
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

8
Assets/GameManager.meta Normal file
View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 5fd2bf33031fe9d4ea3439b41d7f4b97
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,92 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: AreaMat
m_Shader: {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: []
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _AlphaTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- PixelSnap: 0
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _EnableExternalAlpha: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 0.0813297, g: 1, b: 0, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _Flip: {r: 1, g: 1, b: 1, a: 1}
- _RendererColor: {r: 1, g: 1, b: 1, a: 1}
m_BuildTextureStacks: []
m_AllowLocking: 1

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 5a46533bdf4003449bc9146ccef44e27
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -5,6 +5,7 @@ using System.Threading;
using System.Threading.Tasks; using System.Threading.Tasks;
using System.Collections; using System.Collections;
using System.Collections.Generic; using System.Collections.Generic;
using System;
using TMPro; using TMPro;
/* /*
GameManager - hlavní tøida pro správu hry GameManager - hlavní tøida pro správu hry
@@ -20,36 +21,56 @@ public class GameManager : MonoBehaviour
[Header("Subsystems")] [Header("Subsystems")]
protected GameManager_Network networkSubsystem; protected GameManager_Network networkSubsystem;
protected GameManager_UI uiSubsystem; protected GameManager_UI uiSubsystem;
protected GameManager_Map mapSubsystem;
protected GameClient gameClient; protected GameClient gameClient;
[Header("Player Info")] [Header("Player Info")]
public string displayName; public string displayName;
[Header("UI Elements")] [Header("UI Elements")]
public Canvas JoinCreateLobby; public Canvas JoinCreateLobby;
public Canvas InLobby; public Canvas InLobby;
public Canvas LoadingScreen;
public Canvas GameScreen;
[Header("Map")]
public GameObject MapCenterPoint;
public BuildingSettings buildingSettings;
public PathwaySettings pathwaySettings;
public AreaSettings areaSettings;
void Start() void Start()
{ {
DontDestroyOnLoad(this); DontDestroyOnLoad(this);
if (displayName == null || displayName == "") if (displayName == null || displayName == "")
{ {
displayName = "Player_" + Random.Range(1000, 9999).ToString(); displayName = "Player_" + UnityEngine.Random.Range(1000, 9999).ToString();
} }
gameClient = new GameClient(GenerateUUID(), /*displayName*/ GenerateUsername()); gameClient = new GameClient(GenerateUUID(), /*displayName*/ GenerateUsername());
uiSubsystem = new GameManager_UI(gameClient, JoinCreateLobby, InLobby); uiSubsystem = new GameManager_UI(gameClient, JoinCreateLobby, InLobby, LoadingScreen, GameScreen);
networkSubsystem = new GameManager_Network(gameClient); networkSubsystem = new GameManager_Network(gameClient);
mapSubsystem = new GameManager_Map(gameClient, MapCenterPoint, buildingSettings, pathwaySettings, areaSettings);
networkSubsystem.OpenConection(); networkSubsystem.OpenConection();
InvokeRepeating(nameof(uiSubsystem.UpdateLobbyUI), 1f, 1f);
} }
private void Update() private void Update()
{ {
if (gameClient.CurrentLobbyState != null) if (gameClient.CurrentLobbyState != null)
{ {
uiSubsystem.UpdateLobbyUI(); uiSubsystem.UpdateLobbyUI();
} }
try
{
if (gameClient.CurrentLobbyState.MapDataReady)
{
mapSubsystem.BuildMap();
gameClient.CurrentLobbyState.MapDataReady = false;
}
}
catch (NullReferenceException ex) { }
} }
@@ -61,13 +82,13 @@ public class GameManager : MonoBehaviour
} }
protected string GenerateUsername() protected string GenerateUsername()
{ {
string Username = Random.Range(0,10).ToString() + Random.Range(0, 10).ToString() + Random.Range(0, 10).ToString() + Random.Range(0, 10).ToString(); string Username = UnityEngine.Random.Range(0,10).ToString() + UnityEngine.Random.Range(0, 10).ToString() + UnityEngine.Random.Range(0, 10).ToString() + UnityEngine.Random.Range(0, 10).ToString();
Debug.Log(Username); Debug.Log(Username);
return Username; return Username;
} }
public void CreateLobbyButton() public void CreateLobbyButton()
{ {
networkSubsystem.CrateLobby(50.0755, 14.4378); networkSubsystem.CrateLobby(50.7727264, 15.0719876);
} }
public void JoinLobbyButton() public void JoinLobbyButton()
{ {
@@ -85,6 +106,10 @@ public class GameManager : MonoBehaviour
{ {
networkSubsystem.LeaveLobby(); networkSubsystem.LeaveLobby();
} }
public void StartGameButton()
{
networkSubsystem.StartGame();
}
void OnApplicationQuit() void OnApplicationQuit()
{ {
gameClient.Disconnect(); gameClient.Disconnect();

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 9e2c3e4ba4e36ea40a686e58feca4d2b

View File

@@ -0,0 +1,390 @@
using GeoSus.Client;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Globalization;
using UnityEditor;
using UnityEngine;
using UnityEngine.Localization.Pseudo;
using UnityEngine.UI;
namespace Subsystems{
[System.Serializable]
public class BuildingSettings
{
public Material ResidentalBuildingsMat;
public float ResidentalBuildingHeight;
public Material CommercialBuildingsMat;
public float CommercialBuildingHeight;
public Material IndustrialBuildingsMat;
public float IndustrialBuildingHeight;
public Material DefaultBuildingMat;
public float DefaultBuildingHeight;
}
[System.Serializable]
public class PathwaySettings
{
public Material FootwayMat;
public float FootwayWidth;
public Material PathMat;
public float PathWidth;
public Material StepsMat;
public float StepsWidth;
public Material CyclewayMat;
public float CyclewayWidth;
public Material PedestrianMat;
public float PedestrianWidth;
public Material RoadMat;
public float RoadWidth;
public Material ServiceMat;
public float ServiceWidth;
public Material ResidentialMat;
public float ResidentialWidth;
public Material TrackMat;
public float TrackWidth;
public Material DefaultMat;
public float DefaultWidth;
}
[System.Serializable]
public class AreaSettings
{
public Material ParkMat;
public Material GardenMat;
public Material PlaygroundMat;
public Material ForestMat;
public Material GrassMat;
public Material WaterMat;
public Material DefaultMat;
}
public class GameManager_Map
{
private GameClient _gameClient;
private GameObject _mapCenterPoint;
private Position _centerPosition;
private BuildingSettings _buildingSettings;
private PathwaySettings _pathwaySettings;
private AreaSettings _areaSettings;
private const float _metersPerUnit = 1f;
public GameManager_Map(GameClient gameClient, GameObject mapCenterPoint, BuildingSettings buildingSettings, PathwaySettings pathwaySettings, AreaSettings areaSettings)
{
_gameClient = gameClient;
_mapCenterPoint = mapCenterPoint;
_buildingSettings = buildingSettings;
_pathwaySettings = pathwaySettings;
_areaSettings = areaSettings;
}
public void BuildMap()
{
ClearChildren();
_centerPosition = _gameClient.CurrentLobbyState.MapData.Center;
GameObject buildingsRoot = new GameObject("Buildings");
buildingsRoot.transform.parent = _mapCenterPoint.transform;
GameObject pathRoot = new GameObject("Pathways");
pathRoot.transform.parent = _mapCenterPoint.transform;
GameObject areaRoot = new GameObject("Areas");
areaRoot.transform.parent = _mapCenterPoint.transform;
foreach (var building in _gameClient.CurrentLobbyState.MapData.GetBuildings())
{
var buildingType = _gameClient.CurrentLobbyState.MapData.BuildingTypes[_gameClient.CurrentLobbyState.MapData.GetBuildings().IndexOf(building)];
building.Name = buildingType;
GameObject b = BuildBuildingMesh(building);
b.transform.parent = buildingsRoot.transform;
}
foreach (var path in _gameClient.CurrentLobbyState.MapData.GetPathways())
{
GameObject p = BuildPathwayMesh(path);
p.transform.parent = pathRoot.transform;
}
foreach (var area in _gameClient.CurrentLobbyState.MapData.GetAreas())
{
GameObject a = BuildAreaMesh(area);
a.transform.parent = areaRoot.transform;
}
//TODO: POIs
}
GameObject BuildBuildingMesh(MapBuilding b)
{
var building = new GameObject($"Building_{b.Name ?? "Unknown"}");
// Výpočet středu budovy
Vector3 center = CalculatePolygonCenter(b.Outline);
building.transform.position = center;
// Vytvoření mesh pro budovu
MeshFilter meshFilter = building.AddComponent<MeshFilter>();
MeshRenderer meshRenderer = building.AddComponent<MeshRenderer>();
float height;
Material mat;
switch (b.BuildingType.ToLower())
{
case "residential":
mat = _buildingSettings.ResidentalBuildingsMat;
height = _buildingSettings.ResidentalBuildingHeight;
break;
case "commercial":
mat = _buildingSettings.CommercialBuildingsMat;
height = _buildingSettings.CommercialBuildingHeight;
break;
case "industrial":
mat = _buildingSettings.IndustrialBuildingsMat;
height = _buildingSettings.IndustrialBuildingHeight;
break;
default:
mat = _buildingSettings.DefaultBuildingMat;
height = _buildingSettings.DefaultBuildingHeight;
break;
}
Mesh mesh = CreateExtrudedPolygonMesh(b.Outline, height);
meshFilter.mesh = mesh;
//TODO: material by type
// Použijeme barvu podle typu budovy
meshRenderer.material = mat;
// Přidání collideru pro interakci
building.AddComponent<MeshCollider>();
return building;
}
GameObject BuildPathwayMesh(MapPathway w)
{
var path = new GameObject($"Path_{w.Name ?? "Unknown"}");
// Použijeme LineRenderer pro jednoduchost
LineRenderer line = path.AddComponent<LineRenderer>();
float width;
Material mat;
switch (w.PathType)
{
case PathType.Footway:
mat = _pathwaySettings.FootwayMat;
width = _pathwaySettings.FootwayWidth;
break;
case PathType.Path:
mat = _pathwaySettings.PathMat;
width = _pathwaySettings.PathWidth;
break;
case PathType.Steps:
mat = _pathwaySettings.StepsMat;
width = _pathwaySettings.PathWidth;
break;
case PathType.Cycleway:
mat = _pathwaySettings.CyclewayMat;
width = _pathwaySettings.CyclewayWidth;
break;
case PathType.Pedestrian:
mat = _pathwaySettings.PedestrianMat;
width = _pathwaySettings.PedestrianWidth;
break;
case PathType.Road:
mat = _pathwaySettings.RoadMat;
width = _pathwaySettings.RoadWidth;
break;
case PathType.Service:
mat = _pathwaySettings.ServiceMat;
width = _pathwaySettings.ServiceWidth;
break;
case PathType.Residential:
mat = _pathwaySettings.ResidentialMat;
width = _pathwaySettings.ResidentialWidth;
break;
case PathType.Track:
mat = _pathwaySettings.TrackMat;
width = _pathwaySettings.TrackWidth;
break;
default:
mat = _pathwaySettings.DefaultMat;
width = _pathwaySettings.DefaultWidth;
break;
}
line.material = mat;
line.widthMultiplier = width;
// Nastavení bodů cesty
line.positionCount = w.Points.Count;
for (int i = 0; i < w.Points.Count; i++)
{
Vector3 pos = LatLonToLocal(w.Points[i]);
pos.y = 0.1f; // Mírně nad zemí
line.SetPosition(i, pos);
}
return path;
}
GameObject BuildAreaMesh(MapArea a)
{
var area = new GameObject($"Area_{a.Name ?? "Unknown"}");
MeshFilter meshFilter = area.AddComponent<MeshFilter>();
MeshRenderer meshRenderer = area.AddComponent<MeshRenderer>();
// Vytvoření plochého mesh
Mesh mesh = CreateFlatPolygonMesh(a.Outline);
meshFilter.mesh = mesh;
Material mat;
switch (a.AreaType)
{
case MapAreaType.Park:
mat = _areaSettings.ParkMat;
break;
case MapAreaType.Garden:
mat = _areaSettings.GardenMat;
break;
case MapAreaType.Playground:
mat = _areaSettings.PlaygroundMat;
break;
case MapAreaType.Forest:
mat = _areaSettings.ForestMat;
break;
case MapAreaType.Grass:
mat = _areaSettings.GrassMat;
break;
case MapAreaType.Water:
mat = _areaSettings.WaterMat;
break;
default:
mat = _areaSettings.DefaultMat;
break;
}
meshRenderer.material = mat;
area.transform.position = new Vector3(0, 0.05f, 0); // Těsně nad zemí
return area;
}
//TODO: POIs
void ClearChildren()
{
List<GameObject> toDestroy = new List<GameObject>();
foreach (Transform t in _mapCenterPoint.transform)
toDestroy.Add(t.gameObject);
foreach (var g in toDestroy)
{
UnityEngine.Object.DestroyImmediate(g);
}
}
Vector3 LatLonToLocal(Position position)
{
if (_gameClient.CurrentLobbyState.MapData == null) return Vector3.zero;
// Výpočet vzdálenosti a směru od středu
// Zjednodušená verze - pro malé vzdálenosti je dost přesná
double latDiff = position.Lat - _gameClient.CurrentLobbyState.MapData.Center.Lat;
double lonDiff = position.Lon - _gameClient.CurrentLobbyState.MapData.Center.Lon;
// Převod stupňů na metry
// 1 stupeň latitude ≈ 111320 metrů
// 1 stupeň longitude závisí na latitude: 111320 * cos(latitude)
double metersPerDegreeLat = 111320.0;
double metersPerDegreeLon = 111320.0 * Math.Cos(_gameClient.CurrentLobbyState.MapData.Center.Lat * Math.PI / 180.0);
float x = (float)(lonDiff * metersPerDegreeLon);
float z = (float)(latDiff * metersPerDegreeLat);
return new Vector3(x, 0, z);
}
#region Polygon Utils
private Vector3 CalculatePolygonCenter(List<Position> points)
{
Vector3 center = Vector3.zero;
foreach (var point in points)
{
center += LatLonToLocal(point);
}
return center / points.Count;
}
private Mesh CreateExtrudedPolygonMesh(List<Position> outline, float height)
{
Mesh mesh = new Mesh();
int vertexCount = outline.Count;
// Vertices - spodní a horní podstava
Vector3[] vertices = new Vector3[vertexCount * 2];
Vector3 center = CalculatePolygonCenter(outline);
for (int i = 0; i < vertexCount; i++)
{
Vector3 pos = LatLonToLocal(outline[i]) - center;
vertices[i] = pos; // Spodní
vertices[i + vertexCount] = pos + Vector3.up * height; // Horní
}
// Triangles - jen boční stěny pro jednoduchost
List<int> triangles = new List<int>();
for (int i = 0; i < vertexCount; i++)
{
int next = (i + 1) % vertexCount;
// Boční stěna - dva trojúhelníky
triangles.Add(i);
triangles.Add(i + vertexCount);
triangles.Add(next);
triangles.Add(next);
triangles.Add(i + vertexCount);
triangles.Add(next + vertexCount);
}
// Horní podstava - zjednodušená triangulace (fan)
if (vertexCount >= 3)
{
for (int i = 1; i < vertexCount - 1; i++)
{
triangles.Add(vertexCount); // Střed (první bod horní)
triangles.Add(vertexCount + i);
triangles.Add(vertexCount + i + 1);
}
}
mesh.vertices = vertices;
mesh.triangles = triangles.ToArray();
mesh.RecalculateNormals();
mesh.RecalculateBounds();
return mesh;
}
private Mesh CreateFlatPolygonMesh(List<Position> outline)
{
Mesh mesh = new Mesh();
int vertexCount = outline.Count;
Vector3[] vertices = new Vector3[vertexCount];
Vector3 center = CalculatePolygonCenter(outline);
for (int i = 0; i < vertexCount; i++)
{
vertices[i] = LatLonToLocal(outline[i]) - center;
}
// Triangulace - fan pattern
List<int> triangles = new List<int>();
if (vertexCount >= 3)
{
for (int i = 1; i < vertexCount - 1; i++)
{
triangles.Add(0);
triangles.Add(i);
triangles.Add(i + 1);
}
}
mesh.vertices = vertices;
mesh.triangles = triangles.ToArray();
mesh.RecalculateNormals();
return mesh;
}
#endregion
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 71870ee18b89dd7438e5362ff9e02a3b

View File

@@ -10,6 +10,7 @@ namespace Subsystems
private const string _serverAddress = "geosus.honzuvkod.dev"; private const string _serverAddress = "geosus.honzuvkod.dev";
private const int _serverPort = 7777; private const int _serverPort = 7777;
private GameClient _gameClient; private GameClient _gameClient;
private GameManager_Map _mapSubsystem;
public async void OpenConection() public async void OpenConection()
{ {
while (true) while (true)
@@ -78,14 +79,31 @@ namespace Subsystems
} }
private void OnGameEvent(GameEvent gameEvent) private void OnGameEvent(GameEvent gameEvent)
{ {
switch (gameEvent.Type) switch (gameEvent.EventType)
{ {
case "PlayerJoined": case "PlayerJoined":
Debug.Log($"Player {gameEvent.GetPayload<PlayerJoinedPayload>().DisplayName} joined"); Debug.Log($"Player {gameEvent.GetPayload<PlayerJoinedPayload>().DisplayName} joined");
HandlePlayerJoined(gameEvent); break;
case "PlayerLeft":
Debug.Log($"Player {gameEvent.GetPayload<PlayerLeftPayload>()} left");
break;
case "GameStarting":
Debug.Log("Game is starting!");
break;
case "GameStarted":
Debug.Log("Game started");
break;
case "MapDataReady":
Debug.Log("Map data ready");
break;
case "PlayerMapDataReceived":
Debug.Log("Player map data recieved");
break;
case "MapDataError":
Debug.Log("Received MapData server error");
break; break;
default: default:
Debug.Log("Received GameEvent of type: " + gameEvent.Type); Debug.Log("Received GameEvent of type: " + gameEvent.EventType);
break; break;
} }
} }
@@ -111,18 +129,6 @@ namespace Subsystems
Debug.LogError("Failed to create lobby: " + message.Error); Debug.LogError("Failed to create lobby: " + message.Error);
} }
} }
private void HandlePlayerJoined(GameEvent gameEvent)
{
var payload = gameEvent.GetPayload<PlayerJoinedPayload>();
_gameClient.CurrentLobbyState.Players.Add(new PlayerInfo
{
ClientUuid = payload.ClientUuid,
DisplayName = payload.DisplayName,
IsOwner = false,
IsReady = false,
State = PlayerState.Alive
});
}
public void CrateLobby(double lat, double lon) public void CrateLobby(double lat, double lon)
@@ -145,8 +151,11 @@ namespace Subsystems
_gameClient.Disconnect(); _gameClient.Disconnect();
Application.Quit(); Application.Quit();
} }
public void StartGame()
{
_gameClient.StartGame();
}
} }
} }

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 9c2032ed1184ad7418cc415edf97b69e

View File

@@ -11,15 +11,39 @@ namespace Subsystems
private GameClient _gameClient; private GameClient _gameClient;
private Canvas _CreateJoinLobby; private Canvas _CreateJoinLobby;
private Canvas _InLobby; private Canvas _InLobby;
public GameManager_UI(GameClient gameClient, Canvas CreateJoinLobby, Canvas InLobby) private Canvas _LoadingScreen;
private Canvas _GameScreen;
public GameManager_UI(GameClient gameClient, Canvas CreateJoinLobby, Canvas InLobby, Canvas LoadingScreen, Canvas GameScreen)
{ {
_gameClient = gameClient; _gameClient = gameClient;
_CreateJoinLobby = CreateJoinLobby; _CreateJoinLobby = CreateJoinLobby;
_LoadingScreen = LoadingScreen;
_GameScreen = GameScreen;
_InLobby = InLobby; _InLobby = InLobby;
_CreateJoinLobby.enabled = true; _CreateJoinLobby.enabled = true;
_InLobby.enabled = false; _InLobby.enabled = false;
_GameScreen.enabled = false;
_LoadingScreen.enabled = false;
} }
public void UpdateLobbyUI() public void UpdateLobbyUI()
{
if (_gameClient.CurrentLobbyState == null)
{
_CreateJoinLobby.enabled = true;
_InLobby.enabled = false;
_GameScreen.enabled = false;
_LoadingScreen.enabled = false;
return;
}
else if (_gameClient.CurrentLobbyState.Phase == GamePhase.Loading)
{
_CreateJoinLobby.enabled = false;
_InLobby.enabled = false;
_GameScreen.enabled = false;
_LoadingScreen.enabled = true;
return;
}
else if (_gameClient.CurrentLobbyState.Phase == GamePhase.Lobby)
{ {
_InLobby.enabled = true; _InLobby.enabled = true;
_CreateJoinLobby.enabled = false; _CreateJoinLobby.enabled = false;
@@ -30,6 +54,18 @@ namespace Subsystems
playerList.text += player.DisplayName + "\n"; playerList.text += player.DisplayName + "\n";
} }
_InLobby.transform.Find("JoinCode").GetComponent<TMPro.TMP_Text>().text = _gameClient.CurrentLobbyState.JoinCode; _InLobby.transform.Find("JoinCode").GetComponent<TMPro.TMP_Text>().text = _gameClient.CurrentLobbyState.JoinCode;
return;
}
else if (_gameClient.CurrentLobbyState.Phase == GamePhase.Playing)
{
_CreateJoinLobby.enabled = false;
_InLobby.enabled = false;
_GameScreen.enabled = true;
_LoadingScreen.enabled = false;
_GameScreen.transform.Find("Role").GetComponent<TMPro.TMP_Text>().text = _gameClient.MyRole.ToString() ;
return;
}
} }
} }
} }

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: f575016e02384774d88b46ed7f09579f

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 8e926b313c00d4f48ad68750c88817bf

View File

@@ -0,0 +1,92 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: TestMaterial
m_Shader: {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: []
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _AlphaTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- PixelSnap: 0
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _EnableExternalAlpha: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 0, g: 0, b: 0, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _Flip: {r: 1, g: 1, b: 1, a: 1}
- _RendererColor: {r: 1, g: 1, b: 1, a: 1}
m_BuildTextureStacks: []
m_AllowLocking: 1

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 6744524496c8e1549882277283c132cc
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 832a89cb6f62a5240a99d84d09f0a0eb
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

8
Assets/Scenes.meta Normal file
View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: fa2dc9f32b7ad7c419b06e4ad6866e09
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 8f736798e2d13f14f903b26a2df0eed8
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 3e95f16d8e50b3341925e51e50768027
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: facb9eb5d6c7d484097d6167562da786
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

8
Assets/Scripts.meta Normal file
View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 59d02e797bf2bf54e8b2aa0c7e0d4c87
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 2d992ef55bc28784f81e79dd5cca414b

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 8cf96fedb0da0ff4f947cad1c84e352b

View File

@@ -34,7 +34,7 @@ public class MapRenderer : MonoBehaviour
[Header("Misc")] [Header("Misc")]
public float metersPerUnit = 1f; // scale: 1 unit = 1 meter public float _metersPerUnit = 1f; // scale: 1 unit = 1 meter
[Header("Storage")] [Header("Storage")]
@@ -172,7 +172,7 @@ public class MapRenderer : MonoBehaviour
double R = 6378137.0; // Earth radius in meters double R = 6378137.0; // Earth radius in meters
double x = R * dLon * Math.Cos(lat0 * Mathf.Deg2Rad); double x = R * dLon * Math.Cos(lat0 * Mathf.Deg2Rad);
double y = R * dLat; double y = R * dLat;
return new Vector3((float)x / metersPerUnit, 0f, (float)y / metersPerUnit); return new Vector3((float)x / _metersPerUnit, 0f, (float)y / _metersPerUnit);
} }
Vector3 NodeIdToLocal(long nodeId) Vector3 NodeIdToLocal(long nodeId)
{ {
@@ -258,9 +258,9 @@ public class MapRenderer : MonoBehaviour
Vector2 p2 = poly2D[idx2]; Vector2 p2 = poly2D[idx2];
int baseIdx = verts.Count; int baseIdx = verts.Count;
verts.Add(new Vector3(p0.x, height / metersPerUnit, p0.y)); verts.Add(new Vector3(p0.x, height / _metersPerUnit, p0.y));
verts.Add(new Vector3(p1.x, height / metersPerUnit, p1.y)); verts.Add(new Vector3(p1.x, height / _metersPerUnit, p1.y));
verts.Add(new Vector3(p2.x, height / metersPerUnit, p2.y)); verts.Add(new Vector3(p2.x, height / _metersPerUnit, p2.y));
triangles.Add(baseIdx); triangles.Add(baseIdx);
triangles.Add(baseIdx + 1); triangles.Add(baseIdx + 1);
@@ -279,10 +279,10 @@ public class MapRenderer : MonoBehaviour
Vector2 p1 = poly2D[iNext]; Vector2 p1 = poly2D[iNext];
int baseIdx = verts.Count; int baseIdx = verts.Count;
verts.Add(new Vector3(p0.x, height / metersPerUnit, p0.y)); // top left verts.Add(new Vector3(p0.x, height / _metersPerUnit, p0.y)); // top left
verts.Add(new Vector3(p0.x, 0, p0.y)); // bottom left verts.Add(new Vector3(p0.x, 0, p0.y)); // bottom left
verts.Add(new Vector3(p1.x, 0, p1.y)); // bottom right verts.Add(new Vector3(p1.x, 0, p1.y)); // bottom right
verts.Add(new Vector3(p1.x, height / metersPerUnit, p1.y)); // top right verts.Add(new Vector3(p1.x, height / _metersPerUnit, p1.y)); // top right
triangles.Add(baseIdx); triangles.Add(baseIdx);
triangles.Add(baseIdx + 1); triangles.Add(baseIdx + 1);
@@ -369,8 +369,8 @@ public class MapRenderer : MonoBehaviour
else dir = (pts[i + 1] - pts[i - 1]).normalized; else dir = (pts[i + 1] - pts[i - 1]).normalized;
Vector3 normal = Vector3.Cross(dir, Vector3.up).normalized; Vector3 normal = Vector3.Cross(dir, Vector3.up).normalized;
Vector3 left = p + normal * (width * 0.5f / metersPerUnit); Vector3 left = p + normal * (width * 0.5f / _metersPerUnit);
Vector3 right = p - normal * (width * 0.5f / metersPerUnit); Vector3 right = p - normal * (width * 0.5f / _metersPerUnit);
verts.Add(left); verts.Add(left);
verts.Add(right); verts.Add(right);
uvs.Add(new Vector2(0, i)); uvs.Add(new Vector2(0, i));

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 648d9484af013c346bd5ae603a8c7185

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 950ad2ddcd752c84a92eec2603508248
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

8
Assets/Settings.meta Normal file
View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 5a64c672ea90b0f47aa9765ef8cd36bf
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 9fd22110cecc9764db443475c88fb5f8
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 1a0d4317fa56b6f4ca3cc36db322f632
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 8dda0318c5f0774428ff048cf1cc7903
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 1b1d1c584534f0943bd7782382ca724d
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 16789ecfba5bb8b4f9ffe2a76899c9a0
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 32964dc92131b7640be075f3a6fba255
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 9c16494a2393df0429ba240dbfde961b
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: abb54dd1945d1f747981a246f46dfdb4
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 01963b65aa570034185cb6e241239ba7
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

8
Assets/TextMesh Pro.meta Normal file
View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: f54d1bd14bd3ca042bd867b519fee8cc
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: ce51c8e33b734b4db6086586558c53a3
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: b63e0053080646b9819789bf3bf9fa17
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 73a79399807f4e8388c2cbb5494681ca
timeCreated: 1484172033
licenseType: Pro
TextScriptImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,19 @@
fileFormatVersion: 2
guid: 997a43b767814dd0a7642ec9b78cba41
timeCreated: 1484172033
licenseType: Pro
TrueTypeFontImporter:
serializedVersion: 2
fontSize: 16
forceTextureCase: -2
characterSpacing: 1
characterPadding: 0
includeFontData: 1
use2xBehaviour: 0
fontNames: []
fallbackFontReferences: []
customCharacters:
fontRenderingMode: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: efe0bf4ac872451e91612d1ae593f480
timeCreated: 1484171296
licenseType: Pro
TextScriptImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,19 @@
fileFormatVersion: 2
guid: 5dd49b3eacc540408c98eee0de38e0f1
timeCreated: 1484171297
licenseType: Pro
TrueTypeFontImporter:
serializedVersion: 2
fontSize: 16
forceTextureCase: -2
characterSpacing: 1
characterPadding: 0
includeFontData: 1
use2xBehaviour: 0
fontNames: []
fallbackFontReferences: []
customCharacters:
fontRenderingMode: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,22 @@
fileFormatVersion: 2
guid: 8a2b9e2a607dd2143b58c44bc32410b4
TrueTypeFontImporter:
externalObjects: {}
serializedVersion: 4
fontSize: 16
forceTextureCase: -2
characterSpacing: 0
characterPadding: 1
includeFontData: 1
fontName: Electronic Highway Sign
fontNames:
- Electronic Highway Sign
fallbackFontReferences: []
customCharacters:
fontRenderingMode: 0
ascentCalculationMode: 1
useLegacyBoundsCalculation: 0
shouldRoundAdvanceValue: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: d2cf87a8a7a94aa8b80dff1c807c1178
timeCreated: 1484171296
licenseType: Pro
TextScriptImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,19 @@
fileFormatVersion: 2
guid: c9f6d0e7bc8541498c9a4799ba184ede
timeCreated: 1484171297
licenseType: Pro
TrueTypeFontImporter:
serializedVersion: 2
fontSize: 16
forceTextureCase: -2
characterSpacing: 1
characterPadding: 0
includeFontData: 1
use2xBehaviour: 0
fontNames: []
fallbackFontReferences: []
customCharacters:
fontRenderingMode: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: f28c334d44214474d9702d3ad79ecb0a
timeCreated: 1484171296
licenseType: Pro
TextScriptImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: f0303f887b8fa7243a51432c478ff2f3
timeCreated: 1484171296
licenseType: Pro
TextScriptImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,22 @@
fileFormatVersion: 2
guid: 4beb055f07aaff244873dec698d0363e
TrueTypeFontImporter:
externalObjects: {}
serializedVersion: 4
fontSize: 16
forceTextureCase: -2
characterSpacing: 0
characterPadding: 1
includeFontData: 1
fontName: Roboto
fontNames:
- Roboto
fallbackFontReferences: []
customCharacters:
fontRenderingMode: 0
ascentCalculationMode: 1
useLegacyBoundsCalculation: 0
shouldRoundAdvanceValue: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 0251f66ebc602a944b35bccd13be2738
timeCreated: 1484171296
licenseType: Pro
TextScriptImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,21 @@
fileFormatVersion: 2
guid: f4eec857a4fdf2f43be0e9f3d1a984e7
TrueTypeFontImporter:
externalObjects: {}
serializedVersion: 4
fontSize: 16
forceTextureCase: -2
characterSpacing: 0
characterPadding: 1
includeFontData: 1
fontNames:
- Unity
fallbackFontReferences: []
customCharacters:
fontRenderingMode: 0
ascentCalculationMode: 1
useLegacyBoundsCalculation: 0
shouldRoundAdvanceValue: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 5808953df7a24274a851aa6dee52d30e
folderAsset: yes
timeCreated: 1436068007
licenseType: Pro
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,6 @@
fileFormatVersion: 2
guid: e6b9b44320f4448d9d5e0ee634259966
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 3b5cc91c3bf8cf74391252247f52fb59
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,6 @@
fileFormatVersion: 2
guid: c719e38f25a9480abd2480ab621a2949
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,6 @@
fileFormatVersion: 2
guid: aadd5a709a48466c887296bb5b1b8110
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 71529b88994c1a341b22bc57c038674a
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 22262639920f43d6be32430e4e58350d
timeCreated: 1473643741
licenseType: Pro
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 5bff2544887143f5807c7d5059d07f79
folderAsset: yes
timeCreated: 1436068007
licenseType: Pro
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: b06f0e6c1dfa4356ac918da1bb32c603
timeCreated: 1435130987
licenseType: Store
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,6 @@
fileFormatVersion: 2
guid: a6e39ced0ea046bcb636c3f0b2e2a745
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,6 @@
fileFormatVersion: 2
guid: fdad9d952ae84cafb74c63f2e694d042
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: d6d3a169ad794942a21da6a552d62f6f
folderAsset: yes
timeCreated: 1436068007
licenseType: Pro
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 7f422cd1388b01047a58cd07c7a23d9d
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 479a66fa4b094512a62b0a8e553ad95a
timeCreated: 1468189245
licenseType: Pro
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 4c86a3366cd840348ebe8dc438570ee4
timeCreated: 1468443381
licenseType: Pro
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 5cf8ae092ca54931b443bec5148f3c59
timeCreated: 1468443381
licenseType: Pro
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 69a525efa7e6472eab268f6ea605f06e
timeCreated: 1468213165
licenseType: Pro
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 4f1e85c79acf49968737939ce8b445c7
folderAsset: yes
timeCreated: 1436068007
licenseType: Pro
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 749b9069dc4742c5bfa5c74644049926
timeCreated: 1484173523
licenseType: Pro
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: a00013af81304728b2be1f4309ee2433
timeCreated: 1484173536
licenseType: Pro
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 6522f30e342599e4e9dd4cc2cc03c830
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 8a89fa14b10d46a99122fd4f73fca9a2
timeCreated: 1484172732
licenseType: Pro
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 947a44964e53bf0448ff698b2a2219c0
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: f2dcf029949142e28b974630369c8b4e
timeCreated: 1444812175
licenseType: Store
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: f629c6e43dba4bf38cb74d8860150664
timeCreated: 1455497618
licenseType: Store
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: d75b8f41e959450c84ac6e967084d3e1
timeCreated: 1426033972
licenseType: Store
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 6751ce1a4611b3940812c13a6847d94f
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,6 @@
fileFormatVersion: 2
guid: f4e195ac1e204eff960149d1cb34e18c
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,6 @@
fileFormatVersion: 2
guid: 125cb55b44b24c4393181402bc6200e6
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: dc36b3fdc14f47ebb36fd484a67e268a
timeCreated: 1487729771
licenseType: Pro
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -2,20 +2,28 @@
%TAG !u! tag:unity3d.com,2011: %TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000 --- !u!21 &2100000
Material: Material:
serializedVersion: 6 serializedVersion: 8
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_Name: LiberationSans SDF - Metalic Green m_Name: LiberationSans SDF - Metalic Green
m_Shader: {fileID: 4800000, guid: 68e6db2ebdc24f95958faec2be5558d6, type: 3} m_Shader: {fileID: 4800000, guid: 68e6db2ebdc24f95958faec2be5558d6, type: 3}
m_ShaderKeywords: BEVEL_ON GLOW_ON OUTLINE_ON UNDERLAY_ON m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords:
- BEVEL_ON
- GLOW_ON
- OUTLINE_ON
- UNDERLAY_ON
m_InvalidKeywords: []
m_LightmapFlags: 5 m_LightmapFlags: 5
m_EnableInstancingVariants: 0 m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0 m_DoubleSidedGI: 0
m_CustomRenderQueue: -1 m_CustomRenderQueue: -1
stringTagMap: {} stringTagMap: {}
disabledShaderPasses: [] disabledShaderPasses: []
m_LockedProperties:
m_SavedProperties: m_SavedProperties:
serializedVersion: 3 serializedVersion: 3
m_TexEnvs: m_TexEnvs:
@@ -32,14 +40,14 @@ Material:
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
- _MainTex: - _MainTex:
m_Texture: {fileID: 28684132378477856, guid: 8f586378b4e144a9851e7b34d9b748ee, m_Texture: {fileID: 28684132378477856, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
type: 2}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
- _OutlineTex: - _OutlineTex:
m_Texture: {fileID: 2800000, guid: f88677df267a41d6be1e7a6133e7d227, type: 3} m_Texture: {fileID: 2800000, guid: f88677df267a41d6be1e7a6133e7d227, type: 3}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats: m_Floats:
- _Ambient: 0 - _Ambient: 0
- _Bevel: 1 - _Bevel: 1
@@ -50,6 +58,7 @@ Material:
- _BumpFace: 0 - _BumpFace: 0
- _BumpOutline: 0 - _BumpOutline: 0
- _ColorMask: 15 - _ColorMask: 15
- _CullMode: 0
- _Diffuse: 0 - _Diffuse: 0
- _FaceDilate: 0.15 - _FaceDilate: 0.15
- _FaceUVSpeedX: 0 - _FaceUVSpeedX: 0
@@ -69,8 +78,8 @@ Material:
- _PerspectiveFilter: 0 - _PerspectiveFilter: 0
- _Reflectivity: 12.76 - _Reflectivity: 12.76
- _ScaleRatioA: 0.9 - _ScaleRatioA: 0.9
- _ScaleRatioB: 0.6525 - _ScaleRatioB: 0.59624994
- _ScaleRatioC: 0.6525 - _ScaleRatioC: 0.59624994
- _ScaleX: 1 - _ScaleX: 1
- _ScaleY: 1 - _ScaleY: 1
- _ShaderFlags: 0 - _ShaderFlags: 0
@@ -102,3 +111,5 @@ Material:
- _ReflectOutlineColor: {r: 0, g: 0, b: 0, a: 1} - _ReflectOutlineColor: {r: 0, g: 0, b: 0, a: 1}
- _SpecularColor: {r: 0.7689687, g: 1, b: 0.75000346, a: 1} - _SpecularColor: {r: 0.7689687, g: 1, b: 0.75000346, a: 1}
- _UnderlayColor: {r: 0, g: 0, b: 0, a: 0.5} - _UnderlayColor: {r: 0, g: 0, b: 0, a: 0.5}
m_BuildTextureStacks: []
m_AllowLocking: 1

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 8b29aaa3eec7468097ff07adfcf29ac9
timeCreated: 1484213182
licenseType: Pro
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 9ad269c99dcf42b7aedefd83dd5a7b9d
timeCreated: 1484174016
licenseType: Pro
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 42df1c7856584b6b8db9a509b6b10074
timeCreated: 1484173785
licenseType: Pro
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 0161d805a3764c089bef00bfe00793f5
timeCreated: 1484171878
licenseType: Pro
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: b246c4190f4e46ec9352fe15a7b09ce0
timeCreated: 1487723245
licenseType: Pro
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 2ddca8f46aa0838419d568affb0ca6b4
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: e6b276ec991f467aa14ef1f3cc665993
timeCreated: 1487723313
licenseType: Pro
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 90722b8bd74d9aa49958562aff7bdf76
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 5302535af1044152a457ed104f1f4b91
timeCreated: 1487723159
licenseType: Pro
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:

Some files were not shown because too many files have changed in this diff Show More