예제 #1
0
        public void CreateMe()
        {
            Transform prefab = null;

            prefab = prefabService.GetPrefab(Core.Interfaces.PrefabNames.Vilager);
            if (ownerPlayer.controledBySI == false)
            {
                prefab = prefabService.GetPrefab(Core.Interfaces.PrefabNames.VilagerRed);
            }

            transform        = UnityEngine.Object.Instantiate(prefab, new Vector3(x, 0, y), Quaternion.identity) as Transform;
            objectUnity      = transform.gameObject;
            objectUnity.name = "Agent-" + id;
            Debug.Log("Insert vilager " + x + " " + y);
            //MatchDataS.myMatch.mapData.Table[x + 800][y + 800] = this;
            IcontrollAgentScript controllAgentScript = objectUnity.GetComponent(typeof(IcontrollAgentScript)) as IcontrollAgentScript;

            controllAgentScript.agentData = this;
        }
        public void Init()
        {
            Transform prefab = null;

            foreach (var p in MatchDataS.myMatch.mapData.players)
            {
                Player player = p.Value;
                Debug.Log("InitAgents Player " + player.id);
                foreach (var a in player.agents)
                {
                    Agent agent = a.Value;
                    agent.owner = player.number;
                    Debug.Log("InitAgents Player " + player.id + " Agent " + agent.id + " type " + agent.type);
                    switch (agent.type)
                    {
                    case Agent.Type.Vilager:
                        prefab = prefabService.GetPrefab(Core.Interfaces.PrefabNames.Vilager);
                        if (player.controledBySI == false)
                        {
                            prefab = prefabService.GetPrefab(Core.Interfaces.PrefabNames.VilagerRed);
                        }
                        break;

                    case Agent.Type.Cow:
                        continue;
                    }
                    if (prefab != null)
                    {
                        agent.transform        = UnityEngine.Object.Instantiate(prefab, new Vector3(agent.x, 0, agent.y), Quaternion.identity) as Transform;
                        agent.objectUnity      = agent.transform.gameObject;
                        agent.objectUnity.name = "Agent-" + agent.id;
                        Debug.Log("Insert vilager " + agent.x + " " + agent.y);
                        MatchDataS.myMatch.mapData.Table[agent.x + 800][agent.y + 800] = agent;
                        IcontrollAgentScript controllAgentScript = agent.objectUnity.GetComponent(typeof(IcontrollAgentScript)) as IcontrollAgentScript;
                        controllAgentScript.agentData = agent;
                    }
                }
            }
        }