Beispiel #1
0
	public void OnTileLanded(GamePlayer player){
		
		switch (tileType){
			case TileType.property:
				if(isOwned == false){
					player.StartCoroutine(player.ProcessUnownedPropertyTile(this));
				}
				else{
					if(tileGroup == TileGroup.utility){
						// calculate rent cost
						currentRentCost = player.moveDiceScore.number * utilityMultiplier;
						SetTileDetails();
						player.StartCoroutine(player.ProcessOwnedPropertyTile(this));
					}
					else{
						player.StartCoroutine(player.ProcessOwnedPropertyTile(this));
					}
				}
			break;
			
			case TileType.chance:
				player.StartCoroutine(player.ProcessChanceCard());
			break;
			
			case TileType.chest:
				player.StartCoroutine(player.ProcessCommunityChestCard());
			break;
		
			case TileType.goJail:
				player.GoToJail();
			break;
			
			case TileType.inJail:
				player.DoneMoveAction();
			break;
			
			case TileType.start:
				player.DoneMoveAction();
			break;
			
			case TileType.tax:
				player.StartCoroutine(player.PayTax(currentRentCost));
			break;
			
			case TileType.free:
				// do nothing
				player.DoneMoveAction();
			break;
		}
		
	}