void DetectFieldTypeAmdAction(GameFieldViewer field) { switch (field.GetFieldType) { case FieldType.Free: Debug.Log("Free Field"); if (turn == PlayerType.Player) { popup.Show(PopupType.Buy, GetBuyField, field.GetFieldModel.cost); } else { GetBuyField(true); } break; case FieldType.Bonus: Debug.Log("Bonus Field"); int bon = bonus.ShowBonusAnimation(field.GetPosition); GetPlayerView.GetModel.AddMoney(bon); panel.SetPlayerInfo(GetPlayerView.GetModel); SwitchTurn(); break; case FieldType.Player1: Debug.Log("Player1 Field"); if (turn == PlayerType.Player) { field.PayTax(player_model, ai_model, panel); int tax = field.GetFieldModel.tax; animationController.TextAnimation(field.GetPosition, "-" + tax.ToString()); animationController.TextAnimation(ai_view.GetPosition, "+" + tax.ToString()); } SwitchTurn(); break; case FieldType.Player2: Debug.Log("Player2 Field"); if (turn == PlayerType.AI) { field.PayTax(ai_model, player_model, panel); int tax = field.GetFieldModel.tax; animationController.TextAnimation(field.GetPosition, "-" + tax.ToString()); animationController.TextAnimation(player_view.GetPosition, "+" + tax.ToString()); } SwitchTurn(); break; case FieldType.Start: ShowStartFieldGetBonus(); SwitchTurn(); break; } }
public void PutOnTheField(GameFieldViewer field) { switch (model.GetPlayerType) { case PlayerType.Player: this.viewer.setPosion(field.GetPosition + new Vector3(0.2f, 0.2f, 0)); break; case PlayerType.AI: this.viewer.setPosion(field.GetPosition - new Vector3(0.2f, 0.2f, 0)); break; } this.model.SetFieldPosition(field.GetID); }
/* * Build GameField and Add it all on gameplay * */ void BuildField() { int kof = 0; for (int i = 0; i < 24; i++) { GameFieldViewer field = new GameFieldViewer(); FieldType type = FieldType.None; Sprite sprite; float x_pos = 0, y_pos = 0; Vector3 scale; Vector3 rotation; if (i == 0) { type = FieldType.Start; sprite = start_sprite; scale = new Vector3(1f, 1f, 0); field.SetModel(0, 0); } else if (i == 6 || i == 12 || i == 18) { type = FieldType.Bonus; sprite = bonus_sprite; kof = 0; scale = new Vector3(1f, 1f, 0); field.SetModel(0, 0); } else { type = FieldType.Free; sprite = free_sprite; scale = new Vector3(0.47f, 0.5f, 0); field.SetModel(100 + i * 10, (100 + i * 10) / 10); } if (i < 6) { x_pos = x_resolution - .7f - kof * 1.42f; y_pos = -y_resolution + 0.7f; rotation = new Vector3(0, 0, 0); } else if (i < 12) { x_pos = x_resolution - .75f - 6 * 1.42f; y_pos = -y_resolution + 0.7f + kof * 1.42f; rotation = new Vector3(0, 0, -90.0f); } else if (i < 18) { x_pos = x_resolution - .75f - (6 - kof) * 1.42f; y_pos = -y_resolution + 0.75f + 6 * 1.42f; rotation = new Vector3(0, 0, 180.0f); } else { x_pos = x_resolution - .7f; y_pos = -y_resolution + 0.75f + (6 - kof) * 1.42f; rotation = new Vector3(0, 0, 90.0f); } field.Build(this.gameObject, type, sprite); field.SetPosition(new Vector3(x_pos, y_pos, 0)); field.SetScale(scale); field.Rotate(rotation); field.SetLayer(2); fields.Add(field); kof++; } }