private void Awake() { Debug.Log("Entity -" + name); //加载组件 animator = GetComponent <Animator>(); shootingBehavior = GetComponent <ShootingBehavior>(); movingBehavior = GetComponent <MovingBehavior>(); hitBehavior = GetComponent <HitBehavior>(); collider = GetComponent <Collider2D>(); rigidbody = GetComponent <Rigidbody2D>(); stat = GetComponent <Stats>(); //音效初始化 if (shootingBehavior != null) { shootingBehavior.audio = usingAudio; } if (movingBehavior != null) { movingBehavior.audio = usingAudio; } if (hitBehavior != null) { hitBehavior.audio = usingAudio; } PickingBehavior pickingBehavior = GetComponent <PickingBehavior>(); if (pickingBehavior != null) { pickingBehavior.audio = usingAudio; } }
protected override void StartActor() { mTargetTransform = PlayerReference.instance.player.transform; b_GenericEnemyBehavior = new GenericEnemyBehavior(gameObject); b_ShootingBehavior = new ShootingBehavior(mShootingPrefab); b_GenericEnemyBehavior.SetMinDistance(mRangedDistance); b_ShootingBehavior.AddHitableTag("player"); mBehaviorsList.Add(b_GenericEnemyBehavior); mBehaviorsList.Add(b_ShootingBehavior); }
//private float mOilPotCooldownPassedTime = 0; protected override void StartActor() { b_PlayerBehavior = new PlayerBehavior(gameObject, mBasicAttackPrefab); b_ShootingBehavior = new ShootingBehavior(mShootingPrefab); b_OilPotBehavior = new OilPotBehavior(mOilPotPrefab); b_PlayerBehavior.SetInput(2); mInput = b_PlayerBehavior.mInput; mBehaviorsList.Add(b_PlayerBehavior); mBehaviorsList.Add(b_ShootingBehavior); mBehaviorsList.Add(b_OilPotBehavior); b_PlayerBehavior.SetMeleAttackTime(0.6f); gameObject.GetComponent <SpriteRenderer>().flipX = true; }
public void PickUp(Transform entity) { isPickedUp = true; Collider2D collider = GetComponent <Collider2D>(); if (collider != null) { collider.enabled = false; } Rigidbody2D rigidbody = GetComponent <Rigidbody2D>(); if (rigidbody != null) { rigidbody.bodyType = RigidbodyType2D.Static; rigidbody.simulated = false; } //可能要提前判断一下entity能不能拾取,也可能不需要,pickingBehavior管这个 this.entity = entity; ShootingBehavior behavior = entity.GetComponent <ShootingBehavior>(); if (behavior != null) { behavior.weapon = this; //给射击动作这把武器 transform.parent = behavior.holdingPoint; //把武器设置成实体子物体 transform.localPosition = Vector3.zero; transform.localRotation = Quaternion.identity; transform.localScale = new Vector3(1, 1, 1); } //初始化枪 InitializeGun(); //设置枪的贴图 GetComponent <SpriteRenderer>().sprite = gunSprite; }
/// <summary> /// 初始化组件 /// </summary> private void InitComponent() { shootingBehavior = GetComponent <ShootingBehavior>(); chStatus = GetComponent <Stats>(); anim = GetComponent <Animator>(); }
void Start() { shootingBehavior = GetComponent <ShootingBehavior>(); }
private void Awake() { shootingBehavior = GetComponent <ShootingBehavior>(); }