public IEnumerator RespawnPlayerCo() { Instantiate(deathFX, player.transform.position, player.transform.rotation); player.enabled = false; player.GetComponent <Renderer>().enabled = false; camCtrl.isFollowing = false; // gravityStore = player.GetComponent<Rigidbody2D>().gravityScale; //player.GetComponent<Rigidbody2D>().gravityScale = 0f; //player.GetComponent<Rigidbody2D>().velocity = Vector2.zero; ScoreManager.AddPoints(-pointsPenaltyOnDeath); Debug.Log("Player Respawned"); yield return(new WaitForSeconds(respawnDelay)); //player.GetComponent<Rigidbody2D>().gravityScale = gravityStore; player.transform.position = currentCheckpoint.transform.position; player.knockBackCount = 0; player.enabled = true; player.GetComponent <Renderer>().enabled = true; healthManager.FullHealth(); healthManager.isDead = false; camCtrl.isFollowing = true; Instantiate(respawnFX, currentCheckpoint.transform.position, currentCheckpoint.transform.rotation); }
/// <summary> /// 아이템을 공격하면 습득한다 /// 샷건은 제외(중복 습득 가능성이 있기 때문에..) /// </summary> /// <param name="hit"></param> void HitItemPickUp(RaycastHit hit) { HitEffectPlay(hit.point); if (hit.transform.tag.Equals("Grenade")) { if (playerCtrl.GetComponent <ItemManager>().NGrenadeCount < playerCtrl.GetComponent <ItemManager>().NMaxGrenadeCount) { playerCtrl.GetComponent <ItemManager>().NGrenadeCount++; playerCtrl.GetComponent <ItemManager>().GrenadeCountText(); hit.transform.gameObject.SetActive(false); } } if (hit.transform.tag.Equals("Recovery")) { if (playerCtrl.GetComponent <ItemManager>().NRecoveryCount < playerCtrl.GetComponent <ItemManager>().NMaxRecorveryCount) { playerCtrl.GetComponent <ItemManager>().NRecoveryCount++; playerCtrl.GetComponent <ItemManager>().RecoveryCountText(); hit.transform.gameObject.SetActive(false); } } }
public override void ClickAction() { state = GameObject.Find("Player").GetComponent <PlayerCtrl>(); //플레이어 현재 상태 Arrow = GameObject.Find("ExitRoomDoor"); // 밖으로 통하는 문 위 화살표 Door = GameObject.Find("ExitRoom").GetComponent <Transform>(); // 밖으로 문 Player = GameObject.Find("Player"); if (state.ps == PlayerCtrl.PlayerState.Escape_House && Arrow.GetComponent <SelectableObject>()._IsArrowAppearing == true) // 플레이어 현재 상태가 Escape_House 이고 밖으로 통하는 문 위 화살표가 활성화 일 때만 { GameObject.Find("Ment15").GetComponent <UITextManager>().EraseText(); if (GameObject.Find("Ment16").GetComponent <UITextManager>().transform.FindChild("CanvasGroup").gameObject.active) { GameObject.Find("Ment16").GetComponent <UITextManager>().EraseText(); } GameObject.Find("ExitRoom").GetComponent <AudioSource>().enabled = true; Arrow.GetComponent <SelectableObject>()._IsArrowAppearing = false; // 문 위 화살표 비활성화 Audio.GetComponent <AudioSource>().enabled = false; Player.GetComponent <AudioSource>().enabled = false; End.SetActive(true); towel.SetActive(false); EndingCam.SetActive(true); // GameObject.Find("Ment16").SetActive(false); state.GetComponent <EscapeHouse>().Ending(); StartCoroutine("OpenDoor"); //문 여는 코루틴 } }
void OnTriggerEnter(Collider other) { // Playerか判定. if( other.tag == "Player" ){ // アイテム取得. CharacterStatus aStatus = other.GetComponent<CharacterStatus>(); aStatus.GetItem(kind); // オーディオ再生. AudioSource.PlayClipAtPoint(itemSeClip,transform.position); // アイテムを取得をオーナーへ通知する. PlayerCtrl playerCtrl = other.GetComponent<PlayerCtrl>(); if (playerCtrl.GetComponent<NetworkView>().isMine) { if (GetComponent<NetworkView>().isMine) GetItemOnNetwork(playerCtrl.GetComponent<NetworkView>().viewID); else GetComponent<NetworkView>().RPC("GetItemOnNetwork",GetComponent<NetworkView>().owner,playerCtrl.GetComponent<NetworkView>().viewID); } } }
private void Start() { // Debug.Log("WeaponeCtrl"); ItemSearch(weaponeDataName); //무기 데이터 적용 playerCtrl = GameObject.FindGameObjectWithTag("Player").GetComponent <PlayerCtrl>(); itemManager = playerCtrl.GetComponent <ItemManager>(); _audio = GetComponent <AudioSource>(); hitParticle = hitEffect.GetComponentsInChildren <ParticleSystem>(); WeaponePartsAct(); //파츠 활성화 }
private void Awake() { Instance = this; BlockLength = player.GetComponent <SpriteRenderer>().bounds.size.x; rainbow.Add(Colour.White, new Color(1, 1, 1)); rainbow.Add(Colour.Red, new Color(255 / 255f, 0, 0)); rainbow.Add(Colour.Orange, new Color(255 / 255f, 152 / 255f, 0)); rainbow.Add(Colour.Yellow, new Color(255 / 255f, 255 / 255f, 0)); rainbow.Add(Colour.Green, new Color(0, 255 / 255f, 0)); rainbow.Add(Colour.Cyan, new Color(0, 255 / 255f, 255 / 255f)); rainbow.Add(Colour.Blue, new Color(0, 0, 255 / 255f)); rainbow.Add(Colour.Purple, new Color(150 / 255f, 0, 255 / 255f)); rainbow.Add(Colour.Black, new Color(0, 0, 0)); }
void DisableAndPushPlayer() { player.transform.GetComponent <PlayerCtrl>().enabled = false; foreach (Collider2D c2d in player.transform.GetComponents <Collider2D>()) { c2d.enabled = false; } foreach (Transform child in player.transform) { child.gameObject.SetActive(false); } Rigidbody2D rb = player.GetComponent <Rigidbody2D>(); rb.velocity = Vector2.zero; rb.AddForce(new Vector2(-150.0f, 400f)); }
public override void build() { Tile tile = StaticVar.currentSelectedTile; PlayerCtrl playerCtrl = Object.Instantiate(GameConfigure.instance.playerCtrlPrefab); Transform t = playerCtrl.GetComponent <Transform> (); t.localPosition = new Vector3(tile.x, 0, tile.z); Player player = new Player(); player.team = StaticVar.currentTeam; player.x = tile.x; player.z = tile.z; player.gameObject = playerCtrl.gameObject; player.init(); playerCtrl.player = player; }
/// <summary> /// 이벤트 스테이지의 경우 /// 업그래이드 포인트와 아이템 정보만 저장하여 넘긴다 /// </summary> /// <param name="save"></param> public void ItemSave(PlayerCtrl player, ItemManager itemData, string stageNam) { data.sceneName = stageNam; //아이템 ItemManager item = player.GetComponent <ItemManager>(); data.nGrenadeCount = item.NGrenadeCount; data.nRecoveryCount = item.NRecoveryCount; data.nMaxGrenadeCount = item.NMaxGrenadeCount; data.nMaxRecorveryCount = item.NMaxRecorveryCount; data.grenadeLevel = item.GrenadeLevel; data.recoveryLevel = item.RecoveryLevel; data.greadeDMG = item.GreadeDMG; data.recoveryHP = item.RecoveryHP; data.nUpgradePoint = item.NUpgradePoint; dataManager.Save(data); }
private void OnTriggerStay(Collider other) { PlayerCtrl NetworkPlayerCtrl = other.gameObject.GetComponentInParent <PlayerCtrl>(); if (NetworkPlayerCtrl == null || NetworkPlayerCtrl == this) { return; } if (NetworkPlayerCtrl.m_PlayerTeam == m_PlayerTeam) { if (m_PhotonView.isMine) { m_fTime += Time.deltaTime; if (m_fTime >= 3.0f) { NetworkPlayerCtrl.GetComponent <CapsuleCollider>().isTrigger = false; } } } }
/// <summary> /// 데이터 저장 /// </summary> public void SaveGameData(PlayerCtrl player, WeaponeManager weaponeData, ItemManager itemData, string stageName) { data.sceneName = stageName; //캐릭터 data.hp = player.Hp; data.maxHp = player.MaxHp; data.speed = player.Speed; data.isLive = player.IsLive; data.isFire = player.IsFire; data.isReload = player.IsReload; data.isStop = player.IsStop; //무기 int length = weaponeData.WeaponePos.Length; data.weaponeList.Clear(); //리스트 정리 //Debug.Log("Weapone List : " + weaponeData.WeaponePos.Length); for (int i = 0; i < length; i++) { WeaponeCtrl weapone = weaponeData.WeaponePos[i].GetComponentInChildren <WeaponeCtrl>(); WeaponeData weaponeList = new WeaponeData(); //Debug.Log("weapone Info : " + weaponeData.WeaponePos[i].GetComponentInChildren<WeaponeCtrl>().name); weaponeList.id = weapone.Id; weaponeList.weaponeName = weapone.WeaponeName; weaponeList.weaponeState = weapone.WeaponeState; weaponeList.nLevel = weapone.NLevel; weaponeList.nMaxLevel = weapone.NMaxLevel; weaponeList.m_fMinDmg = weapone.FMinDmg; weaponeList.m_MaxDmg = weapone.MaxDmg; weaponeList.m_nMag = weapone.NMag; weaponeList.m_nCurBullet = weapone.NCurBullet; data.weaponeList.Add(weaponeList); //Debug.Log("Weapone Data : " + data.weaponeList[i].weaponeName); //weaponeList = null; } //아이템 ItemManager item = player.GetComponent <ItemManager>(); data.nGrenadeCount = item.NGrenadeCount; data.nRecoveryCount = item.NRecoveryCount; data.nMaxGrenadeCount = item.NMaxGrenadeCount; data.nMaxRecorveryCount = item.NMaxRecorveryCount; data.grenadeLevel = item.GrenadeLevel; data.recoveryLevel = item.RecoveryLevel; data.greadeDMG = item.GreadeDMG; data.recoveryHP = item.RecoveryHP; data.nUpgradePoint = item.NUpgradePoint; dataManager.Save(data); item = null; }
void Awake() { PlayerCtrl player_ctrl = (PlayerCtrl)GameObject.FindObjectOfType(typeof(PlayerCtrl)); playerStatus = player_ctrl.GetComponent <CharacterStatus>(); }
void onItemEffect() { player.GetComponent <Skill>().reduce_cooltime = this.item.reduce_cooltime; Invoke("offItemEffect", 25.0f); // 지정 시간 뒤 아이템 효과 해제. }
/// <summary> /// 레벨 출력 /// </summary> void StatsLevel() { levelText[0].text = ""; levelText[1].text = "Level " + player.GetComponent <ItemManager>().RecoveryLevel + "/10"; levelText[2].text = "Level " + player.GetComponent <ItemManager>().GrenadeLevel + "/10"; levelText[3].text = "Level " + weapone[0].NLevel + "/" + weapone[0].NMaxLevel; levelText[4].text = "Level " + weapone[1].NLevel + "/" + weapone[1].NMaxLevel; levelText[5].text = "Level " + weapone[2].NLevel + "/" + weapone[2].NMaxLevel; }