public void SetPlayer(PlayerMotor pm) { playerMotor = pm; psm = pm.GetComponent <PlayerStatusManager>(); psm.canDie = canDie; }
public void StartGame(PlayerStatusManager player) { isGaming = true; this.player = player; speed = 48f; distance = player.Distance - 60; }
/// <summary> /// 在zombie的attack动画中添加event片段,执行此函数,对player造成等同于zombie攻击力数值的伤害 /// </summary> public void Attack() { if (PlayerStatusManager.Instance().currentHp > 0) { PlayerStatusManager.Instance().ReduceHp(attackPower - (int)(PlayerStatusInfo.Instance().def * 0.2f)); } }
private void PushAway(Collider col) { // Stun the player PlayerStatusManager psm = col.GetComponent <PlayerStatusManager>(); psm.ApplyCrowdControl(new CrowdControl(CrowdControlType.Stun, DamageType.Melee, DamageElement.Physical), STUN_DURATION); // Push the player away Vector3 knightCenter = km.transform.position; Vector3 position = col.transform.position; Vector3 finalPosition = position + (position - knightCenter).normalized * (PUSH_AWAY_RANGE - (position - knightCenter).magnitude); // x and z AnimationCurve xCurve = new AnimationCurve(); xCurve.AddKey(new Keyframe(0, position.x)); xCurve.AddKey(new Keyframe(PUSH_AWAY_DURATION, finalPosition.x)); AnimationCurve zCurve = new AnimationCurve(); zCurve.AddKey(new Keyframe(0, position.z)); zCurve.AddKey(new Keyframe(PUSH_AWAY_DURATION, finalPosition.z)); // y AnimationCurve yCurve = new AnimationCurve(); yCurve.AddKey(new Keyframe(0, position.y)); yCurve.AddKey(new Keyframe(PUSH_AWAY_DURATION, position.y)); // Add curve to player movement psm.playerMotor.MoveByCurve(PUSH_AWAY_DURATION, xCurve, yCurve, zCurve); }
/// <summary> /// 使用此快捷栏中的技能 /// </summary> /// <returns>使用成功返回 true</returns> public bool UseSkill() { //没有技能的情况 if (this.id == 0) { Debug.Log("没有快捷技能"); return(false); } //cd没好的情况 else if (!SkillBoard.Instance().FindSkillById(id).GetSkillReadyState()) { Debug.Log("CD未冷却"); return(false); } //mp不够的情况 else if (!PlayerStatusManager.Instance().ReduceMp(this.info.mpSpend)) { Debug.Log("蓝不够"); return(false); } //没有以上情况则释放技能 else { //使技能进入冷却 SkillBoard.Instance().FindSkillById(id).SetSkillColdState(); //技能发射器发射技能 SkillShoot.Instance().ShootSkill(this.id, this.info); return(true); } }
void PushAway(PlayerStatusManager psm, AbilityColliderTrigger abilityColliderTrigger, Collider col) { // Push the player away Vector3 actPos = abilityColliderTrigger.transform.position; SphereCollider sc = abilityColliderTrigger.GetComponent <SphereCollider>(); Vector3 position = col.transform.position; Vector3 finalPosition = position + (position - actPos).normalized * (sc.radius - (position - actPos).magnitude); // x and z AnimationCurve xCurve = new AnimationCurve(); xCurve.AddKey(new Keyframe(0, position.x)); xCurve.AddKey(new Keyframe(PUSH_AWAY_DURATION, finalPosition.x)); AnimationCurve zCurve = new AnimationCurve(); zCurve.AddKey(new Keyframe(0, position.z)); zCurve.AddKey(new Keyframe(PUSH_AWAY_DURATION, finalPosition.z)); // y AnimationCurve yCurve = new AnimationCurve(); yCurve.AddKey(new Keyframe(0, position.y)); yCurve.AddKey(new Keyframe(PUSH_AWAY_DURATION, position.y)); // Add curve to player movement psm.playerMotor.MoveByCurve(PUSH_AWAY_DURATION, xCurve, yCurve, zCurve); }
void Start() { transform.position = PlayerPosition.transform.position; GameObject GameManager = GameObject.Find("GameManager"); PlayerState = GameManager.GetComponent <PlayerStatusManager>(); rbyPlayer = GetComponent <Rigidbody>(); }
void Start() { GameObject GameManager = GameObject.Find("GameManager"); PlayerState = GameManager.GetComponent <PlayerStatusManager>(); rbyPlayer = GetComponent <Rigidbody>(); ShootVectol = Vector3.zero; }
void Awake () { if (playerStatusManager == null) playerStatusManager = GameObject.Find("PlayerStatusManager").GetComponent<PlayerStatusManager>(); if (particleManager == null) particleManager = GameObject.Find("ParticleManager").GetComponent<ParticleManager>(); }
void Start() { meleeHitbox = GetComponentInChildren <MeleeHitbox>(); audioSource = GetComponent <AudioSource>(); playerStatus = GetComponent <PlayerStatusManager>(); movementManager = GetComponent <MovementManager>(); animator = GetComponent <Animator>(); }
void Start() { player = GameObject.FindGameObjectWithTag(Constants.Tags.Player).GetComponent <PlayerStatusManager>(); RaycastHit2D hit = Physics2D.Linecast(transform.position, transform.position - new Vector3(0, 100, 0), LayerMask.GetMask(Constants.Layers.ClimbableEnvironment)); laserLength = hit.distance; beamDestination = hit.point; }
int attackHash = 0; //ダメージ判定を一度きりに制限するため void Awake() { enemyCtrl = GetComponentInParent <EnemyController>(); playerAnim = GameObject.FindWithTag("Player").GetComponent <Animator>(); playerCtrl = playerAnim.GetComponent <PlayerController>(); playerStatusManager = playerAnim.GetComponent <PlayerStatusManager>(); }
void Start() { player = GameObject.Find("Player").GetComponent <PlayerStatusManager>(); MoneyEarnedWhenNotActivated(); StartCoroutine(UpdateTimer()); }
void Update() { #if UnityEditor //背包加药品 if (Input.GetKeyDown(KeyCode.P)) { int x = 0; BagBoard.Instance().PickOneItemById(x = Random.Range(1001, 1004)); Debug.Log(x); } //背包加装备 if (Input.GetKeyDown(KeyCode.O)) { int x = 0; BagBoard.Instance().PickOneItemById(x = Random.Range(2001, 2023)); Debug.Log(x); } //商店加药品 if (Input.GetKeyDown(KeyCode.L)) { ShopBoard.Instance().AddOneShopItemById(c++); Debug.Log(c); } //商店加装备 if (Input.GetKeyDown(KeyCode.K)) { ShopBoard.Instance().AddOneShopItemById(z++); Debug.Log(z); } //扣血 if (Input.GetKeyDown(KeyCode.M)) { PlayerStatusManager.Instance().ReduceHp(50); } //加钱 if (Input.GetKeyDown(KeyCode.UpArrow)) { CoinManager.Instance().AddCoin(50); } //扣钱 if (Input.GetKeyDown(KeyCode.DownArrow)) { CoinManager.Instance().ReduceCoin(50); } //加点 if (Input.GetKeyDown(KeyCode.KeypadPlus)) { PlayerStatusManager.Instance().AddPoint(); } //加技能 if (Input.GetKeyDown(KeyCode.B)) { SkillBoard.Instance().AddOneSkillById(4001); SkillBoard.Instance().AddOneSkillById(4002); SkillBoard.Instance().AddOneSkillById(4003); } #endif }
/// <summary> /// 使用药品 /// </summary> public void UseDrug() { //死人是用不了药的 if (Global.playerState != Global.State.DieState) { PlayerStatusManager.Instance().AddHpAndMp(info); ReduceItemNum(1); } }
void Start() { GameObject GameManager = GameObject.Find("GameManager"); ClearFlag = GameManager.GetComponent <ClearFlagManager>(); PlayerState = GameManager.GetComponent <PlayerStatusManager>(); RemainText = RemainTextObject.GetComponent <Text>(); }
private void ApplyGroundDamage(Collider col) { PlayerStatusManager psm = col.GetComponent <PlayerStatusManager>(); Damage dmg = new Damage(GROUND_DAMAGE, DamageType.AreaOfEffect, DamageElement.Energy, col.transform.position); if (psm.IsAffectedBy(dmg, em, em.transform.position)) { psm.TakeDamage(dmg, em, em.transform.position); } }
protected virtual void Start() { enemyRigidbody = GetComponent <Rigidbody2D>(); sprite = GetComponent <SpriteRenderer>(); animator = GetComponent <Animator>(); defaultColour = sprite.color; damageFlashColour = Color.red; player = GameObject.FindGameObjectWithTag("Player"); playerStatus = player.GetComponent <PlayerStatusManager>(); }
void Start() { gunDatsuHitbox = GetComponentInChildren <GunDatsuHitbox>(); movementManager = GetComponent <MovementManager>(); playerStatus = GetComponent <PlayerStatusManager>(); playerRigidbody = GetComponent <Rigidbody2D>(); animator = GetComponent <Animator>(); cameraManager = Camera.main.GetComponent <CameraManager>(); InGunDatsu = false; }
void Awake () { if (playerStatusManager == null) playerStatusManager = GameObject.Find("PlayerStatusManager").GetComponent<PlayerStatusManager>(); if (particleManager == null) particleManager = GameObject.Find("ParticleManager").GetComponent<ParticleManager>(); playerStatusManager.OnGoldChanged += HandleOnGoldChanged; }
void Start() { timer = GameObject.Find("Timer").GetComponent <Timer>(); player = GameObject.Find("Player").GetComponent <PlayerStatusManager>(); easing = GetComponent <Easing>(); coin = transform.GetChild(6).gameObject; coinBox = transform.GetChild(7).gameObject; StartCoroutine(UpdateResult()); }
/// <summary> /// 从此装备栏中移除装备信息 /// </summary> public void UnloadThisGridEquip() { //移除装备赋予玩家的属性 PlayerStatusManager.Instance().ReduceProperties(info); //物品栏添加该物品 BagBoard.Instance().PickOneItemById(this.id); //此栏装备清空 this.id = 0; this.info = null; DestroyImmediate(this.GetComponentInChildren <Item>().transform.gameObject); }
private void ApplyDamage(Collider col) { PlayerStatusManager psm = col.GetComponent <PlayerStatusManager>(); Damage dmg = new Damage(25f, DamageType.Melee, DamageElement.Physical, em.transform.position); if (psm.IsAffectedBy(dmg, em, em.transform.position)) { psm.TakeDamage(dmg, em); psm.ApplyCrowdControl(new CrowdControl(CrowdControlType.Stun, DamageType.Melee, DamageElement.Physical), STUN_DURATION); } }
/// <summary> /// 向此装备栏添加装备信息 /// </summary> /// <param name="id">装备id</param> /// <param name="info">装备info</param> public void SetThisGridEquipById(int id, ObjectInfo info) { this.id = id; this.info = info; Item equip = this.GetComponentInChildren <Item>(); equip.SetIconAndId(id, this.info.icon_name); equip.equiping = true; //赋予玩家装备的属性 PlayerStatusManager.Instance().AddProperties(info); }
private void Start() { this.rb = GetComponent <Rigidbody2D>(); this.animator = GetComponent <Animator>(); obj = this.transform.Find("Punch_obj").gameObject; col = obj.GetComponent <BoxCollider2D>(); psm = StatusManager.GetComponent <PlayerStatusManager>(); gm = GManager.GetComponent <GManager>(); }
private void ApplyRayDamage(Collider col) { PlayerStatusManager psm = col.GetComponent <PlayerStatusManager>(); Damage dmg = new Damage(RAY_DAMAGE, DamageType.RangeInstant, DamageElement.Energy, em.transform.position); if (psm.IsAffectedBy(dmg, em, em.transform.position)) { psm.TakeDamage(dmg, em, em.transform.position); missed = false; } }
public override void Start(PlayerStatusManager psm) { base.Start(psm); psm.moveMultiplicators.Add(this, 0); psm.maxRotation.Add(this, 0); // Lock all abilities psm.playerMotor.LockAbilitiesExcept(true, psm.playerMotor.abilities[PlayerController.IN_AB_ESC]); // TODO Effect }
public void OnColliderEnter(AbilityColliderTrigger abilityColliderTrigger, Collider col) { if (col.tag == "Player") { PlayerStatusManager psm = col.GetComponent <PlayerStatusManager>(); Damage dmg = new Damage(10f, DamageType.AreaOfEffect, DamageElement.Energy, abilityColliderTrigger.transform.position); if (psm.IsAffectedBy(dmg, em)) { psm.TakeDamage(dmg, em); } } }
private void ApplyExplosionDamage(AbilityColliderTrigger abilityColliderTrigger, Collider col) { PlayerStatusManager psm = col.GetComponent <PlayerStatusManager>(); Damage dmg = new Damage(EXPLOSION_DAMAGE, DamageType.AreaOfEffect, DamageElement.Energy, abilityColliderTrigger.transform.position); if (psm.IsAffectedBy(dmg, em, em.transform.position)) { psm.TakeDamage(dmg, em, em.transform.position); missed = false; } }
void Start() { playerRigidbody = GetComponent <Rigidbody2D>(); playerStatus = GetComponent <PlayerStatusManager>(); animator = GetComponent <Animator>(); sprite = GetComponent <SpriteRenderer>(); groundDetector = GetComponentInChildren <GroundDetector>(); wallclimbDetector = GetComponentInChildren <WallDetector>(); IsGrounded = false; HasMovementFreedom = true; regularGravityScale = playerRigidbody.gravityScale; }
void Start() { if (instance == null) { instance = this; } else if (instance != this) { //잘못된 인스턴스를 가르키고 있을 경우 Destroy(gameObject); } }
void Start() { healthTransform = healthSlider.gameObject.GetComponent <RectTransform>(); GameObject player = GameObject.FindGameObjectWithTag("Player"); playerStatus = player.GetComponent <PlayerStatusManager>(); health = playerStatus.Health; maxHealth = playerStatus.MaxHealth; energy = playerStatus.MaxEnergy; energySlider.maxValue = energy; healthSlider.maxValue = playerStatus.MaxHealth; healthSliderSizeMultiplier = healthTransform.sizeDelta.x / maxHealth; }
public void Start() { manager = GameObject.Find("LevelMessenger"); main_character = GameObject.Find("MainCharacter"); main_character.transform.position = player_start_pos.position; Destroy(Instantiate(enter_effect, player_start_pos.position, Quaternion.identity) as GameObject, 5.0f); AudioManager.PlaySound(travel_sound, transform.position); main_character.tag = "Player"; player_status = (main_character.GetComponent("PlayerStatusManager") as PlayerStatusManager); player_status.HealFix(player_status.max_health); player_status.ChangeManaFix(player_status.max_mana); GameObject.Find("AudioManager").transform.position = invisible_pos.position; GameObject.Find("GUITextMessenger").transform.position = invisible_pos.position; GameObject.Find("MecanimEventManager").transform.position = invisible_pos.position; AudioManager.PlayEnvironmentSound(null); AudioManager.PlayBackgroundMusic(null); }
void Awake () { TextAsset XMLTextAsset = (TextAsset) Resources.Load(levelPath + levelName); xmlDoc = new XmlDocument(); xmlDoc.LoadXml(XMLTextAsset.text); startingGold = int.Parse(xmlDoc.SelectSingleNode("/level/startingGold").InnerText); entityFactory = EntityFactory.GetInstance(); monsterGUIManager = GameObject.Find("MonsterGUIManager").GetComponent<MonsterGUIManager>(); waveManager = GameObject.Find("WaveManager").GetComponent<HeroWaveManager>(); if (playerStatusManager == null) playerStatusManager = GameObject.Find("PlayerStatusManager").GetComponent<PlayerStatusManager>(); //waveManager.onSpawnNewHero += HandleOnSpawnNewHero; waveManager.onWaveCompletedSpawning += HandleOnWaveCompletedSpawning; waveManager.onAllWaveEnemiesDefeated += HandleOnWaveEnemiesDefeated; waveManager.onNextWaveStarted += HandleOnNextWaveStarted; }
void Start() { monsterScrollList = GameObject.Find("MonsterScrollList").GetComponent<UIScrollList>(); statsPanel = GameObject.Find("MonsterInfoPanel").GetComponent<UIPanel>(); magnitudeBar = statsPanel.transform.FindChild("damage").FindChild("damageBar").GetComponent<UIProgressBar>(); attackSpeedBar = statsPanel.transform.FindChild("attackSpeed").FindChild("attackSpeedBar").GetComponent<UIProgressBar>(); attackRangeBar = statsPanel.transform.FindChild("range").FindChild("rangeBar").GetComponent<UIProgressBar>(); movementSpeedBar = statsPanel.transform.FindChild("moveSpeed").FindChild("moveSpeedBar").GetComponent<UIProgressBar>(); healthBar = statsPanel.transform.FindChild("health").FindChild("healthBar").GetComponent<UIProgressBar>(); spawnRate = statsPanel.transform.FindChild("spawnRate").GetComponent<SpriteText>(); monsterName = statsPanel.transform.FindChild("name").GetComponent<SpriteText>(); monsterSprite = statsPanel.transform.FindChild("sprite").GetComponent<tk2dSprite>(); goldCost = statsPanel.transform.FindChild("goldCost").GetComponent<SpriteText>(); confirmButton = statsPanel.transform.FindChild("okayButton").GetComponent<UIButton>(); confirmButtonImage = confirmButton.GetComponent<tk2dSprite>(); monsterSaleConfirmationPanel = GameObject.Find("SellConfirmationPanel").GetComponent<UIPanel>(); monsterSaleConfirmButton = monsterSaleConfirmationPanel.transform.FindChild("okayButton").GetComponent<UIButton>(); monsterSaleCancelButton = monsterSaleConfirmationPanel.transform.FindChild("cancelButton").GetComponent<UIButton>(); monsterSaleConfirmButton.scriptWithMethodToInvoke = this; monsterSaleCancelButton.scriptWithMethodToInvoke = this; monsterSaleConfirmButton.methodToInvoke = "MonsterSaleConfirmed"; monsterSaleCancelButton.methodToInvoke = "MonsterSaleCancelled"; scrollListCamera = monsterScrollList.renderCamera; levelManager = GameObject.Find("LevelManager").GetComponent<LevelManager>(); listPanel = GameObject.Find("MonsterSelectionPanel").GetComponent<UIPanel>(); Transform attackEffectParent = GameObject.Find("attackEffectIcons").transform.FindChild("icons"); actionEffectIcons = attackEffectParent.GetComponentsInChildren<tk2dSprite>(); if (playerStatusManager == null) playerStatusManager = GameObject.Find("PlayerStatusManager").GetComponent<PlayerStatusManager>(); entityFactory = EntityFactory.GetInstance(); monsterSelectedCallback = null; LoadMonsterScrollPanel(); }
void Start() { if (spawnLocation == Vector3.zero) spawnLocation = transform.FindChild("SpawnLocation").transform.position; if (monsterGUIManager == null) monsterGUIManager = GameObject.Find("MonsterGUIManager").GetComponent<MonsterGUIManager>(); if (playerStatusManager == null) playerStatusManager = GameObject.Find("PlayerStatusManager").GetComponent<PlayerStatusManager>(); currentSpawnSpeedMultiplier = baseSpawnSpeedMultiplier; monsterIndicators = new tk2dSprite[5]; monsterIndicators[0] = transform.FindChild("monsterIndicators").FindChild("1").GetComponent<tk2dSprite>(); monsterIndicators[1] = transform.FindChild("monsterIndicators").FindChild("2").GetComponent<tk2dSprite>(); monsterIndicators[2] = transform.FindChild("monsterIndicators").FindChild("3").GetComponent<tk2dSprite>(); monsterIndicators[3] = transform.FindChild("monsterIndicators").FindChild("4").GetComponent<tk2dSprite>(); monsterIndicators[4] = transform.FindChild("monsterIndicators").FindChild("5").GetComponent<tk2dSprite>(); levelManager = GameObject.Find("LevelManager").GetComponent<LevelManager>(); entityFactory = EntityFactory.GetInstance(); viewCamera = GameObject.Find("Main Camera").GetComponent<Camera>(); selectionCollider = transform.FindChild("SelectCollider").GetComponent<Collider>(); spawnCollider = transform.FindChild("SpawnCollider").GetComponent<SpawnCollider>(); totalSpawned = 0; totalAlive = 0; sprite = transform.FindChild("MonsterSprite").GetComponent<tk2dSprite>(); dungeonSprite = GetComponent<tk2dSprite>(); canSell = false; }