Beispiel #1
0
    public virtual bool canMoveOf(int _x, int _z, bool checkEchec)
    {
        float saveX   = x;
        float saveZ   = z;
        Piece removed = null;

        GameManager.team teamDest = getTeamOf(_x, _z);
        if (teamDest == team)
        {
            return(false);
        }
        if (teamDest != GameManager.team.NONE)
        {
            removed = Board.instance.removePieceAt(_x + (int)x, (int)z + _z * _sens);
        }

        x = x + _x;
        z = z + _z;
        bool res = true;

        if (checkEchec)
        {
            res = !GameManager.instance.isTeamOnEchec(team);
        }
        x = saveX;
        z = saveZ;
        if (removed)
        {
            removed.undoRemove();
        }
        return(res);
    }
Beispiel #2
0
	void Connect(string heroName, GameManager.team team) {

        PhotonNetwork.ConnectUsingSettings( "risenhine games 001" );

		selectedHeroName = heroName;
		selectedTeam = team;
        
    }
Beispiel #3
0
 bool doMoveOf(int _x, int _z)
 {
     GameManager.team teamDest = getTeamOf(_x, _z);
     if (teamDest != GameManager.team.NONE)
     {
         Board.instance.removePieceAt(_x + (int)x, (int)z + _z * _sens);
     }
     _target.x = x + _x;
     _target.y = 0;
     _target.z = z + _z * _sens;
     x         = _target.x;
     z         = _target.z;
     _onMove   = true;
     return(true);
 }
Beispiel #4
0
    public void PromoteTo(GameObject _destObject)
    {
        _teamPieces[(int)_toPromote.GetComponent <PieceType>().team].Remove(_toPromote.GetComponent <Piece>());
        Piece save = _toPromote.GetComponent <Piece>();

        Destroy(_toPromote.GetComponent <Piece>());
        _toPromote.GetComponent <MeshFilter>().mesh = _destObject.GetComponent <MeshFilter>().mesh;

        Piece copy;

        PieceType.Type type = _destObject.GetComponent <PieceType>().type;
        if (type == PieceType.Type.FOU)
        {
            copy = _toPromote.AddComponent <Fou>();
        }
        else if (type == PieceType.Type.TOUR)
        {
            copy = _toPromote.AddComponent <Tour>();
        }
        else if (type == PieceType.Type.REINE)
        {
            copy = _toPromote.AddComponent <Reine>();
        }
        else if (type == PieceType.Type.CAVALIER)
        {
            copy = _toPromote.AddComponent <Cavalier>();
        }
        else
        {
            copy = _toPromote.AddComponent <Pion>();
        }
        // Copied fields can be restricted with BindingFlags

        GameManager.team team = _destObject.GetComponent <PieceType>().team;
        copy.team = team;
        copy.x    = save.x;
        copy.z    = save.z;
        _toPromote.transform.eulerAngles           = _defaultRotation[(int)team];
        _toPromote.GetComponent <PieceType>().type = type;
        _teamPieces[(int)team].Add(copy);
        isTeamOnMat(team == GameManager.team.WHITE ? GameManager.team.BLACK : GameManager.team.WHITE);
        SceneManager.UnloadScene("Promote");
    }
Beispiel #5
0
	public void gameStart()
	{
        Debug.Log("game start");


        userName = PlayerPrefs.GetString("userName");
        myHeroName = PlayerPrefs.GetString("heroName");
        myTeam = (GameManager.team)PlayerPrefs.GetInt("userTeam");
        
		//Debug.Log ("------>" + userName + "," + myHeroName + "," + myTeam);

        GameObject obj = SpawnHero();

        player = obj;
        obj.GetComponent<HeroController>().heroName = myHeroName;
        obj.GetComponent<HeroController>().destinationPos = -Vector3.one;
        
        GetComponent<ObjectPool>().Initialize(myTeam);
        GameObject.Find("UI").GetComponent<UIManager>().initializeUI();

        startSpawn = true;
		StartCoroutine ("SpawnMinion");
    }
Beispiel #6
0
    override public bool canMoveOf(int _x, int _z, bool checkEchec)
    {
        bool done = false;

        GameManager.team teamDest = getTeamOf(_x, _z);
        if (_z <= 0 || _x < -1 || _x > 1)
        {
            return(false);
        }
        if (!_hasMoved && _z == 2 && _x == 0 && teamDest == GameManager.team.NONE &&
            getTeamOf(_x, _z - 1) == GameManager.team.NONE)
        {
            done = base.canMoveOf(_x, _z, checkEchec);
        }
        if (_z == 1 && _x != 0 && teamDest != GameManager.team.NONE)
        {
            done = base.canMoveOf(_x, _z, checkEchec);
        }
        if (_z == 1 && _x == 0 && teamDest == GameManager.team.NONE)
        {
            done = base.canMoveOf(_x, _z, checkEchec);
        }
        return(done);
    }
Beispiel #7
0
	public void initializeUI()
    {
        player = gm.GetComponent<GameManager>().player;
        if (player == null)
        {
            Debug.Log("Can't find Player object");
            return;
        }

        userName = PlayerPrefs.GetString("userName");
        myHeroName = PlayerPrefs.GetString("heroName");
        myTeam = (GameManager.team)PlayerPrefs.GetInt("userTeam");

		if (myHeroName == "Gion") { 
			skill1_btn.GetComponent<Image> ().sprite = skillIcons [0];
			skill2_btn.GetComponent<Image> ().sprite = skillIcons [1];
			skill3_btn.GetComponent<Image> ().sprite = skillIcons [2]; 
        } else if (myHeroName == "SwordMaster") { 
			skill1_btn.GetComponent<Image> ().sprite = skillIcons [2];
			skill2_btn.GetComponent<Image> ().sprite = skillIcons [1];
			skill3_btn.GetComponent<Image> ().sprite = skillIcons [0];
		} else if (myHeroName == "Akai") { 
			skill1_btn.GetComponent<Image> ().sprite = skillIcons [2];
			skill2_btn.GetComponent<Image> ().sprite = skillIcons [1];
			skill3_btn.GetComponent<Image> ().sprite = skillIcons [0];
		}
        myteamHeroTexture = heroIcons[getHeroIconIndex(myHeroName)].texture; 
    }
Beispiel #8
0
	void OnJoinedRoom() {
		Debug.Log ("OnJoinedRoom");	
		connecting = false;
		
		if (PhotonNetwork.inRoom) {
			string _userName = PhotonNetwork.room.customProperties["userName"].ToString();
			currentRoomName = PhotonNetwork.room.name;
			roomCapacity = PhotonNetwork.room.maxPlayers;

			roomPanel.SetActive (true);
            
			if (PhotonNetwork.isMasterClient) {
				buttonStartGame.SetActive (true);
				buttonStartGame.GetComponent<UIButton>().isEnabled = false;
			}

            string chatMessage = _userName + " has joined the room";
            GetComponent<PhotonView>().RPC("SendChatMessage", PhotonTargets.Others, chatMessage);

            int numPlayersInRoom = 0;
			foreach(PhotonPlayer player in PhotonNetwork.playerList) {
				numPlayersInRoom++;
			}
				
			if (numPlayersInRoom % 2 == 1) {
				team = GameManager.team.ALPHA;
			} else {
				team = GameManager.team.BETA;
			}			
			teamSeedNumber = (int)Mathf.Ceil((float)numPlayersInRoom / 2); 
			globalSeedNumber = numPlayersInRoom;


			alphaGroupObj.transform.FindChild("alpha_1").gameObject.SetActive(true);
			betaGroupObj.transform.FindChild("beta_1").gameObject.SetActive(true);
			if (roomCapacity >= 4) {
				alphaGroupObj.transform.FindChild("alpha_2").gameObject.SetActive(true);
				betaGroupObj.transform.FindChild("beta_2").gameObject.SetActive(true);
			}
			if (roomCapacity >= 6) {
				alphaGroupObj.transform.FindChild("alpha_3").gameObject.SetActive(true);
				betaGroupObj.transform.FindChild("beta_3").gameObject.SetActive(true);
			}

			GameObject heroSlot = null;
			if (team == GameManager.team.ALPHA) {
				heroSlot = alphaGroupObj.transform.FindChild("alpha_" + teamSeedNumber).gameObject;
			} else {
				heroSlot = betaGroupObj.transform.FindChild("beta_" + teamSeedNumber).gameObject;
			}
			heroSpriteObj = heroSlot.transform.FindChild("hero_sprite").gameObject;
			heroNameObj = heroSlot.transform.FindChild("hero_name").gameObject;

			string msg = team + ":" + userName + "::" + teamSeedNumber;
			GetComponent<PhotonView> ().RPC ("UpdateHeroSelection", PhotonTargets.AllBuffered, msg);
		}
	}
Beispiel #9
0
	public void init(object[] param)
	{
		attachedTeam = (GameManager.team)param[0];
		startPos = (Vector3)param[1];
		endPos = (Vector3)param[2];
	}
Beispiel #10
0
	public void initState(GameManager.team team) {

		if (gm == null)
			gm = GameObject.Find ("_GM").gameObject;
		if (anim == null) 
			anim = GetComponent<Animator> ();

		attachedTeam = team;

		if (team == GameManager.team.BETA) {
			startPos = gm.GetComponent<GameManager>().betaHome.position;
			endPos = gm.GetComponent<GameManager>().alphaHome.position;
		} else {
			startPos = gm.GetComponent<GameManager>().alphaHome.position;
			endPos = gm.GetComponent<GameManager>().betaHome.position;
		}

		resetState ();
	}