Untitled
unknown
plain_text
2 years ago
1.3 kB
4
Indexable
using UnityEngine; namespace BuildSite.State { public class Constructing : StateMachine.IState { private BuildSite.Handler buildSite; private float constructTimer; public Constructing(BuildSite.Handler _buildSite) { buildSite = _buildSite; } public void Enter() { buildSite.SetIsConstructing(true); buildSite.InvokeOnBeginConstructing(); constructTimer = buildSite.GetConstructTimer(); } public void Update() { constructTimer -= Tick.instance.GetTimerMax(); if (FinishedConstructing()) { SpawnBuilding(); buildSite.ClearCurrentBuildingPf(); buildSite.SetIsConstructing(false); buildSite.InvokeOnEndConstructing(); } } public void Exit() { } public bool FinishedConstructing() { return constructTimer <= 0f; } private void SpawnBuilding() { Transform pfTransform = buildSite.GetCurrentBuildingPf(); Vector3 position = buildSite.transform.position; MonoBehaviour.Instantiate(pfTransform, position, Quaternion.identity); } } }
Editor is loading...