private void MovePlayerPart(PlayerPart playerPart, bool isCamera, bool canFly) { //Move Left Right if (Input.GetAxis(m_cameraHorizontal) > 0.1 || Input.GetAxis(m_cameraHorizontal) < -0.1) { if (isCamera || Input.GetAxis("Control") > 0.1f) { //temporary playerPart.transform.position += playerPart.transform.right * Input.GetAxis(m_cameraHorizontal) * speed * Time.fixedDeltaTime; } else { playerPart.transform.Rotate(new Vector3(0, speed * Input.GetAxis(m_cameraHorizontal), 0)); } } //Move forward buttons if (Input.GetAxis(m_cameraVertical) > 0.1 || Input.GetAxis(m_cameraVertical) < -0.1) { playerPart.transform.position += playerPart.transform.forward * Input.GetAxis(m_cameraVertical) * speed * Time.fixedDeltaTime; if (playerPart.Wheels.Length > 0) { for (int i = 0; i < playerPart.Wheels.Length; i++) { playerPart.Wheels[i].RotateAround(playerPart.PivotWheels.position, playerPart.PivotWheels.right, speed * 100 * Time.fixedDeltaTime); } } } //Move UpDown if ((Input.GetAxis(m_upDown) > 0.1 || Input.GetAxis(m_upDown) < -0.1) && canFly) { playerPart.transform.position += playerPart.transform.up * Input.GetAxis(m_upDown) * speed * Time.fixedDeltaTime; } }
void MoveToPosition() { PlayerPart _partToTransform = PlayerPartsManager.Ins.SelectedPart; float _speed = PlayerPartsManager.Ins.TimeToEquip; if (_partToTransform.PartType == TPart.body || this.PartType == TPart.body) { PlayerPartsManager.Ins.BodyEquipped = true; } switch (_partToTransform.PartType) { case TPart.body: MovePart(_partToTransform.transform, bodyAnchor, _speed); break; case TPart.head: MovePart(_partToTransform.transform, headAnchor, _speed); break; case TPart.leftHand: MovePart(_partToTransform.transform, leftHandAnchor, _speed); break; case TPart.rightHand: MovePart(_partToTransform.transform, rightHandAnchor, _speed); break; } }
public void RemovePart(ShopItem part) { PlayerPart myGo = FindObjectsOfType <PlayerPart>().First((x) => { return(x.gameObject.name == part.itemName); }); parts.Remove(myGo); Destroy(myGo.gameObject); }
public void SetPartSprite(PlayerPart part, string spriteName) { if (_parts.ContainsKey(part)) { _parts[part].SpriteName = spriteName; } }
public void RemovePart(PlayerPart part) { if (m_PartList == null) { return; } m_PartList.Remove(part); }
public PlayerSprite GetPlayerSprite(PlayerPart part) { if (_parts.ContainsKey(part)) { return(_parts[part]); } return(null); }
void OnTriggerExit2D(Collider2D other) { PlayerPart playerPart = other.GetComponent <PlayerPart> (); if (playerPart != null) { playerPart.RemoveLight(lightVector); } }
/*public void ReplaceOrAddPart(GameObject go) { * PlayerPart replacePart = GetPartOfSameType(go); * if (replacePart != null) { * RemovePart(replacePart); * } * AddPart(go); * }*/ public void ReplaceOrAddPart(ShopItem go) { PlayerPart replacePart = GetPartOfType(go); if (replacePart != null) { RemovePart(replacePart); } AddPart(go); }
public SpriteRenderer GetRendererByPart(PlayerPart part) { PlayerSprite ps = GetPlayerSprite(part); if (ps != null) { return(ps.GetRenderer()); } return(null); }
public Animator GetAnimatorByPart(PlayerPart part) { PlayerSprite ps = GetPlayerSprite(part); if (ps != null) { return(ps.GetAnimator()); } return(null); }
public void AddPart(PlayerPart part) { if (part == null) { return; } if (m_PartList == null) { m_PartList = new List <PlayerPart> (); } m_PartList.Add(part); }
public PlayerPart GetPartOfSameType(GameObject go) { PlayerPart goPart = go.GetComponent <PlayerPart>(); if (goPart != null) { return(GetPartOfType(goPart.item)); } else { return(null); } }
private void SetPartSelected(PlayerPart newSelectedPart) { if (newSelectedPart == selectedPart) { return; } if (selectedPart != null) { //Deselect prev part selectedPart.SetSelected(false); } selectedPart = newSelectedPart; selectedPart.SetSelected(true); }
public void AddPart(ShopItem partObject) { GameObject partGameObject = partObject.prefabToCreate; Vector3 newPos = partGameObject.transform.position; Quaternion newRot = partGameObject.transform.rotation; GameObject go = Instantiate(partGameObject, transform); go.name = partGameObject.name; go.transform.localPosition = newPos; go.transform.localRotation = newRot; PlayerPart part = go.GetComponent <PlayerPart>(); parts.Add(part); part.Initialize(this, partObject); partAdded.Invoke(); }
public void SnapToPoint(GameObject goToSnap, GameObject goToSnapTo) { if (goToSnapTo.GetComponent <SnapPoint>()?.isOccupied == true) { return; } goToSnap.transform.parent = goToSnapTo.transform; goToSnap.transform.localPosition = new Vector2(0, 0); goToSnap.transform.localRotation = goToSnapTo.transform.localRotation; goToSnap.transform.localScale = goToSnapTo.transform.localScale; goToSnapTo.SetActive(true); PlayerPart part = goToSnap.GetComponent <PlayerPart>(); if (part != null) { switch (part.partType) { case PlayerPart.PARTTYPE.HEALTH: SetMaxHealth(MaxHealth + part.health); Debug.Log("Total Health: " + Health); break; case PlayerPart.PARTTYPE.WEAPON: SetDamage(Damage + part.damage); weaponPart = part; Debug.Log("Total Damage: " + Damage); break; case PlayerPart.PARTTYPE.RESISTENCE: SetResisntence(Resistence + part.resistence); Debug.Log("Total Resistence: " + Resistence); break; default: break; } } SoundManager.instance.PlaySound("AddModules"); }
void OnTriggerEnter(Collider collider) { PlayerPart pp = collider.GetComponent <PlayerPart>(); if (pp) { m_playerTouching = pp.CanActivate; } ObjectController oc = collider.GetComponent <ObjectController>(); if (oc != null) { m_activatorTouching = oc.activatesMecanisms; } if (m_playerTouching || m_activatorTouching) { AudioSource audio = this.GetComponent <AudioSource>(); if (audio != null) { audio.PlayOneShot(audio.clip, audio.volume); } m_material.color = m_activatedColor; foreach (Transform objectToActivate in m_objectsToActivate) { //m_activated = true; if (m_activateObjects) { objectToActivate.gameObject.SetActive(true); } else { objectToActivate.gameObject.SetActive(false); } } } }
void OnTriggerExit(Collider collider) { if (m_stayActive) { return; } PlayerPart pp = collider.GetComponent <PlayerPart>(); if (pp != null && pp.CanActivate) { m_playerTouching = false; } ObjectController oc = collider.GetComponent <ObjectController>(); if (oc != null && oc.activatesMecanisms) { m_activatorTouching = false; } if (!m_activatorTouching && !m_playerTouching) { m_material.color = m_desactivatedColor; foreach (Transform objectToActivate in m_objectsToActivate) { // m_activated = false; if (m_activateObjects) { objectToActivate.gameObject.SetActive(false); } else { objectToActivate.gameObject.SetActive(true); } } } }
void MoveToPosition(PlayerPart partToTransform, float speed) { switch (partToTransform.PartType) { case TPart.body: MovePart(partToTransform.transform, bodyAnchor, speed); break; case TPart.head: MovePart(partToTransform.transform, headAnchor, speed); break; case TPart.leftHand: MovePart(partToTransform.transform, leftHandAnchor, speed); break; case TPart.rightHand: MovePart(partToTransform.transform, rightHandAnchor, speed); break; } }
public void RemovePart(PlayerPart part) { parts.Remove(part); Destroy(part.gameObject); }
void Start() { playerPart = GetComponentInParent <PlayerPart>(); playerPart.IsEquipped = false; m_isOnTrigger = false; }