public IHttpActionResult DeleteTrainConnection([FromBody] Object idObject) { int id; if (idObject.GetType() == typeof(JObject)) { JObject jsonObject = (JObject)idObject; id = (int)jsonObject.GetValue("TrainId"); } else { JArray jsonArray = (JArray)idObject; JToken jsonToken = jsonArray[0]; id = (int)jsonToken["TrainId"]; } TrainConnection trainConnection = db.TrainConnections.Find(id); if (trainConnection == null) { return(NotFound()); } db.TrainConnections.Remove(trainConnection); db.SaveChanges(); return(Ok(trainConnection)); }
public FormEditPathOfConnection(TrainConnection connection) { InitializeComponent(); setDefaultValues(); trainConnection = connection; textBoxFromStation.Text = trainConnection.FromStation.Name; textBoxToStation.Text = trainConnection.ToStation.Name; textBoxPathValidity.Text = displayValidity(pathValidity); }
public void Move(TrainConnection targetTrainConnection) { if (trainConnection != null) { trainConnection.trainManager.LeavePlayer(playerManager); } trainConnection = targetTrainConnection; targetTrainConnection.trainManager.StorePlayer(playerManager); }
public IHttpActionResult PostTrainConnection(TrainConnection trainConnection) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } db.TrainConnections.Add(trainConnection); db.SaveChanges(); return(CreatedAtRoute("DefaultApi", new { id = trainConnection.Id }, trainConnection)); }
static TrainMap InitializeProgram() { #region InitializeProgram // inicializando o grafo com estações e rotas pré definidas var stationA = new TrainStation('A'); var stationB = new TrainStation('B'); var stationC = new TrainStation('C'); var stationD = new TrainStation('D'); var stationE = new TrainStation('E'); var edgeAB = new TrainConnection(5, stationA, stationB); var edgeBC = new TrainConnection(4, stationB, stationC); var edgeCD = new TrainConnection(8, stationC, stationD); var edgeDC = new TrainConnection(8, stationD, stationC); var edgeDE = new TrainConnection(6, stationD, stationE); var edgeAD = new TrainConnection(5, stationA, stationD); var edgeCE = new TrainConnection(2, stationC, stationE); var edgeEB = new TrainConnection(3, stationE, stationB); var edgeAE = new TrainConnection(7, stationA, stationE); stationA.AddConnections(new List <TrainConnection> { edgeAB, edgeAD, edgeAE }); stationB.AddConnection(edgeBC); stationC.AddConnections(new List <TrainConnection> { edgeCD, edgeCE }); stationD.AddConnections(new List <TrainConnection> { edgeDC, edgeDE }); stationE.AddConnection(edgeEB); var trainMap = new TrainMap(new List <TrainStation> { stationA, stationB, stationC, stationD, stationE }); trainMap.AddRoute("CDC".ToCharArray()); trainMap.AddRoute("CEBC".ToCharArray()); trainMap.AddRoute("ABCDC".ToCharArray()); trainMap.AddRoute("ADCDC".ToCharArray()); trainMap.AddRoute("ADEBC".ToCharArray()); trainMap.AddRoute("CEBCDC".ToCharArray()); trainMap.AddRoute("CDCEBC".ToCharArray()); trainMap.AddRoute("CDEBC".ToCharArray()); trainMap.AddRoute("CEBCEBC".ToCharArray()); trainMap.AddRoute("CEBCEBCEBC".ToCharArray()); return(trainMap); #endregion }
public void Init(PlayerInfo[] allPlayerArr, List <CardInfo> allStoreCardList, PlayCardManager playCardManager) { // PlayerInfoHolder GUIHelper.Instance.DestroyChildImmediatly <PlayerInfoHolder> (layout_PlayerInfoParent); // Player string playerHolderName = "PlayerHolder"; if (transform.FindChild(playerHolderName)) { DestroyImmediate(transform.FindChild(playerHolderName).gameObject); } Transform playerHolder = new GameObject(playerHolderName).transform; playerHolder.parent = transform; for (int i = 0; i < allPlayerArr.Length; i++) { //new card list; List <CardInfo> newCardInfoList = new List <CardInfo> (); newCardInfoList.AddRange(allStoreCardList); //new player GameObject newPlayerGObj = Instantiate(playerPrefab.gameObject) as GameObject; newPlayerGObj.name = allPlayerArr [i].playerName; newPlayerGObj.transform.parent = playerHolder; //new playerInfoHolder GameObject newPlayerInfoHolderGObj = Instantiate(playerInfoHolderPrefab.gameObject) as GameObject; newPlayerInfoHolderGObj.name = allPlayerArr [i].playerName; newPlayerInfoHolderGObj.transform.SetParent(layout_PlayerInfoParent, false); PlayerInfoHolder newPlayerInfoHolder = newPlayerInfoHolderGObj.GetComponent <PlayerInfoHolder> (); newPlayerInfoHolder.Init(allPlayerArr [i]); //new train position TrainConnection newStartTrainConnection = GameManager.Instance.gamePlayManager.trainCommander.GetRandomPlayerStartTrainConnection(); //new item ItemInfo newItemInfo = GameManager.Instance.gamePlayManager.BasicItemInfoArr [3]; ItemHolder newItemHolder = Instantiate(itemHolderPrefab); newItemHolder.SetItemInfo(newItemInfo); PlayerManager newPlayerManager = newPlayerGObj.GetComponent <PlayerManager> (); newPlayerManager.Init(i, allPlayerArr [i], newPlayerInfoHolder, newCardInfoList, playCardManager , newStartTrainConnection, newItemHolder); allPlayerDict.Add(i, newPlayerManager); } }
public void Move(TrainConnection targetTrainConnection) { if (trainConnection != null) { trainConnection.trainManager.LeavePolice(); } trainConnection = targetTrainConnection; trainConnection.trainManager.StorePolice(this); List <PlayerManager> thisTrainPlayerManagerList = trainConnection.trainManager.GetAllPlayerManager; for (int i = 0; i < thisTrainPlayerManagerList.Count; i++) { thisTrainPlayerManagerList [i].PlayerHealthController.TakeDamage(); thisTrainPlayerManagerList [i].PlayerCardController.AddOneUselessBulletCard(); } }
void cardToPlayer(CardInfo card, PlayerManager thisPlayer) { TrainConnection thisPlayerStandTrainConnection = thisPlayer.PlayerMoveController.PlayerTrainConnection; thisAccountPlayerStandTrainManager = thisPlayerStandTrainConnection.trainManager; if (thisPlayer.IsDie) { reactionManager.SetPlayerDie(); return; } thisAccountPlayerManager.SetPlay(true); switch (card.cardType) { case CardType.Up: if (thisPlayerStandTrainConnection.nearbyTrain_Up != null) { thisPlayer.PlayerMoveController.Move(thisPlayerStandTrainConnection.nearbyTrain_Up); reactionManager.SetActionSuccess(); } else { reactionManager.SetActionFail(CardType.Up); } break; case CardType.Down: if (thisPlayerStandTrainConnection.nearbyTrain_Down != null) { thisPlayer.PlayerMoveController.Move(thisPlayerStandTrainConnection.nearbyTrain_Down); reactionManager.SetActionSuccess(); } else { reactionManager.SetActionFail(CardType.Down); } break; case CardType.Left: if (thisPlayerStandTrainConnection.nearbyTrain_Left != null) { thisPlayer.PlayerMoveController.Move(thisPlayerStandTrainConnection.nearbyTrain_Left); reactionManager.SetActionSuccess(); } else { reactionManager.SetActionFail(CardType.Left); } break; case CardType.Right: if (thisPlayerStandTrainConnection.nearbyTrain_Right != null) { thisPlayer.PlayerMoveController.Move(thisPlayerStandTrainConnection.nearbyTrain_Right); reactionManager.SetActionSuccess(); } else { reactionManager.SetActionFail(CardType.Right); } break; case CardType.Pick: thisAccountItemHolderList = thisAccountPlayerStandTrainManager.GetAllItemHolder; if (thisAccountItemHolderList.Count > 0) { SetMarkableMark(thisAccountItemHolderList.ToArray(), true); } else { reactionManager.SetActionFail(CardType.Pick); } break; case CardType.Punch: thisAccountCanAttackPlayerManagerList = thisAccountPlayerStandTrainManager.GetAllPlayerManager; if (thisAccountCanAttackPlayerManagerList.Count > 1) { SetMarkableMark(thisAccountCanAttackPlayerManagerList.ToArray(), thisPlayer, true); } else { reactionManager.SetActionFail(CardType.Punch); } break; case CardType.Shot: if (thisAccountPlayerManager.PlayerBulletController.BulletCount <= 0) { reactionManager.SetNoBullet(); return; } if (thisAccountPlayerStandTrainManager.IsRoof) { List <TrainManager> roofTrainManagerList = GameManager.Instance.gamePlayManager.trainCommander.RoofTrainManagerList; for (int i = 0; i < roofTrainManagerList.Count; i++) { List <PlayerManager> thisRoofPlayerManagerList = roofTrainManagerList [i].GetAllPlayerManager; thisAccountCanAttackPlayerManagerList.AddRange(thisRoofPlayerManagerList); } } else { if (thisPlayerStandTrainConnection.nearbyTrain_Left != null) { TrainManager leftTrainManager = thisPlayerStandTrainConnection.nearbyTrain_Left.trainManager; if (leftTrainManager != null && leftTrainManager.GetAllPlayerManager.Count != 0) { thisAccountCanAttackPlayerManagerList.AddRange(leftTrainManager.GetAllPlayerManager); } } if (thisPlayerStandTrainConnection.nearbyTrain_Right != null) { TrainManager rightTrainManager = thisPlayerStandTrainConnection.nearbyTrain_Right.trainManager; if (rightTrainManager != null && rightTrainManager.GetAllPlayerManager.Count != 0) { thisAccountCanAttackPlayerManagerList.AddRange(rightTrainManager.GetAllPlayerManager); } } } if (thisAccountCanAttackPlayerManagerList.Count > 0) { SetMarkableMark(thisAccountCanAttackPlayerManagerList.ToArray(), thisPlayer, true); } else { reactionManager.SetActionFail(CardType.Shot); } break; case CardType.Police: if (policeManager == null) { policeManager = FindObjectOfType <PoliceManager> (); } GameManager.Instance.gamePlayManager.cameraController.ForcusOnPos(policeManager.PolicePosition); policeManager.ShowPath(); break; } }
private void setDefaultValues() { trainConnection = null; pathValidity = false; stages = new List <Stage>(); }
public void Init(int targetIndex, PlayerInfo targetPlayerInfo, PlayerInfoHolder targetPlayerInfoHolder , List <CardInfo> targetCardList, PlayCardManager targetPlayCardManager, TrainConnection targetTrainConnection , ItemHolder targetItemHolder) { playerIndex = targetIndex; playerInfo = targetPlayerInfo; playerRenderer = playerTrans.GetComponent <SpriteRenderer> (); playerRenderer.sprite = Resources.Load <Sprite> (targetPlayerInfo.character.spriteUrl); text_PlayerName.text = (playerIndex + 1) + ":" + playerInfo.playerName; healthController.Init(totalHealth, this, targetPlayerInfoHolder); cardController.Init(playerIndex, playerInfo, this, targetCardList, targetPlayCardManager); moveController.Init(this); moveController.Move(targetTrainConnection); playerTrans.position = moveController.standPos; itemController.Init(targetPlayerInfoHolder); itemController.StoreItem(targetItemHolder); bulletController.Init(maxBulletCount, targetPlayerInfoHolder); SetPlay(false); }
public FormDetailsOfConnection(TrainConnection connection) { InitializeComponent(); trainConnection = connection; }