You've already forked taptap2024_GJ_chidouren
58 lines
1.9 KiB
C#
58 lines
1.9 KiB
C#
using System.Collections.Generic;
|
|
using Game.Component.SceneProp;
|
|
using Sirenix.OdinInspector;
|
|
using UnityEngine;
|
|
using UnityEngine.Serialization;
|
|
|
|
namespace Game.Component
|
|
{
|
|
public class ScenePart : MonoBehaviour
|
|
{
|
|
public PolygonCollider2D cameraCollider;
|
|
public Transform createPos;
|
|
|
|
public int completeConditionNumber = 10;
|
|
public float playerBaseSpeed = 4f;
|
|
|
|
[FormerlySerializedAs ("completeProp")] public SuccessProp successProp;
|
|
|
|
[LabelText ("当前完成数:")] private int _currentConditionNumber = 0;
|
|
|
|
public int CurrentConditionNumber => this._currentConditionNumber;
|
|
|
|
private List<EnemyEntity> _enemyEntities;
|
|
private List<BaseProp> _baseProps;
|
|
|
|
public float CurProgress => this._currentConditionNumber * 1f / completeConditionNumber;
|
|
|
|
public bool IsCondition => _currentConditionNumber >= completeConditionNumber;
|
|
|
|
public bool AddConditionNumber (int number = 1)
|
|
{
|
|
this._currentConditionNumber += number;
|
|
return _currentConditionNumber >= completeConditionNumber;
|
|
}
|
|
|
|
public void RefreshInit ()
|
|
{
|
|
this._currentConditionNumber = 0;
|
|
foreach (var enemyEntity in this._enemyEntities)
|
|
{
|
|
enemyEntity.ResetState ();
|
|
}
|
|
foreach (var baseProp in this._baseProps)
|
|
{
|
|
baseProp.ResetProp ();
|
|
}
|
|
this.successProp.gameObject.SetActive (false);
|
|
}
|
|
|
|
public void InitPart ()
|
|
{
|
|
this._enemyEntities = new List<EnemyEntity> ();
|
|
this._enemyEntities = new List<EnemyEntity> (transform.GetComponentsInChildren<EnemyEntity> (true));
|
|
this._baseProps = new List<BaseProp> (transform.GetComponentsInChildren<BaseProp> (true));
|
|
}
|
|
|
|
}
|
|
} |