void PlacePredator(string predatorData) { //Debug.Log (predatorData); PredatorData predator = new PredatorData(); string[] predators = predatorData.Split(','); predator.id = predators[0].ToString(); predator.xPosition = float.Parse(predators[1]) / scaleFactor; predator.yPosition = float.Parse(predators[2]) / scaleFactor; predator.angle = float.Parse(predators[3]); predator.assetKeyword = predators[4]; predator.targetUserId = predators[5]; predator.height = predator.width = DefaultParameterManager.Instance.GetPredatorSize(predator.assetKeyword); listPredatorData.Add(predator); if (predator.assetKeyword == "shark") { WarningHandler.Instance.SetSharkPosition(predator.xPosition, predator.yPosition); WarningHandler.Instance.isSharkAround = true; } else { WarningHandler.Instance.isSharkAround = false; } }
public void SetData(PredatorData data) { SetPredatorId(data.id); SetPosition(data.xPosition, data.yPosition); SetSize(data.width, data.height); SetAngle(data.angle); keyword = data.assetKeyword; }
private void InitVariables() { controller = GameController.Get(); data = controller.players[owner].data; moveSpeed = data.moveSpeed; satiety = data.satiety; hunger_rate = data.hunger_rate; starvation_threshold = data.starvation_threshold; overeating_threshold = data.overeating_threshold; state = data.state; target_search_delay = data.target_search_delay; logging = data.logging; }
public void UpdatePredators(List <PredatorData> listPredator) { for (int idx = 0; idx < listPredator.Count; idx++) { PredatorData data = listPredator[idx]; int fIdx = registeredPredator.FindIndex(x => x.predatorId.Equals(data.id)); //Find the given data in the list. If it's not in the list, create new predator if (fIdx < 0) { GameObject go = predatorPool.GetGameObject(data.assetKeyword); PredatorController control = go.GetComponent <PredatorController>(); //reset animation before deploying control.SetAnimationToMove(); LayerController.Instance.SetFishLayer(go, 10); if (control == null) { control = go.AddComponent <PredatorController>(); } control.SetData(data); registeredPredator.Add(control); // Debug.Log ("predator id = "+data.id); } //When it's already in the list, just reset the data else { registeredPredator[fIdx].SetData(data); } } predatorUpdateCount += 1; //Clear food after 10 updates, to reduce procesing cost if (predatorUpdateCount >= 10) { ClearPredator(listPredator); predatorUpdateCount = 0; } }