public void Launch(FXAsset impactFX, ObjectPoolAsset pool, Faction faction) { m_pool = pool; m_impactFX = impactFX; m_faction = faction; m_isLaunched = true; }
public void Play(Vector3 worldPos, ObjectPoolAsset pool) { GameObject go = GenerateFXGO(worldPos, pool); if (!go) { Debug.Log("no go created "); return; } PlayOnStartSFX(go); }
public void AssembleAnimation(UnitStateType state, UnitAsset asset) { m_asset = asset; m_state = state; m_pool = m_asset.ObjectPoolAsset(); m_deathFX = m_asset.DeathFX(); m_collisionFX = m_asset.CollisionFX(); m_camShakeEvent = m_asset.CamShakeEvent(); m_motorSFX = m_asset.MotorSFX(); m_mesh = m_asset.AddMeshToUnit(transform); }
public void Play(Transform p, Vector3 localPos, ObjectPoolAsset pool) { GameObject go = GenerateFXGO(p.position + localPos, pool); if (!go) { Debug.Log("no go created "); return; } go.transform.parent = p; go.transform.localPosition = localPos; go.transform.localRotation = Quaternion.Euler(p.forward); PlayOnStartSFX(go); }
public void PoolAmmoAndFX(ObjectPoolAsset pool) { m_pool = pool; m_pool.TryCreateNewPool(m_ammoAsset); if (m_launchFX) { m_pool.TryCreateNewPool(m_launchFX); } if (m_impactFX) { m_pool.TryCreateNewPool(m_impactFX); } }
public void AssembleHealth(UnitStateType state, UnitAsset asset, UnitBuilder builder, UnitAnimation animation) { m_asset = asset; m_state = state; m_builder = builder; m_animation = animation; m_isPlayer = m_asset.IsPlayer(); m_pool = m_asset.ObjectPoolAsset(); m_faction = m_asset.Faction(); m_playerHealthChangeEvent = m_asset.UnitHealthChangeEvent(); m_playerDeathEvent = m_asset.UnitDeathEvent(); }
//private bool m_isPaused = true; #region assembly public void SetupUnitWeapons(UnitStateType state, UnitAsset asset) { m_asset = asset; m_state = state; m_faction = m_asset.Faction(); m_pool = m_asset.ObjectPoolAsset(); m_weaponSlots = m_asset.SetWeaponSlotsOnUnit(transform); m_autoFire = m_asset.AutoFire(); InitialiseAllWeaponSlots(); //m_activateOnEnable = activateOnEnable; //ConfigForStart(); }
private GameObject GenerateFXGO(Vector3 worldPos, ObjectPoolAsset pool) { GameObject go; if (!pool) { go = Instantiate(m_prefab); go.transform.position = worldPos; if (m_autoRepoolLife > 0f) { go.AddComponent <AutoDestroy>().SetLifespan(m_autoRepoolLife); } } else { go = pool.GetObjectFromPool(this, worldPos, Quaternion.identity); } return(go); }
public void SetPoolAsset(ObjectPoolAsset poolAsset) { objectPool = poolAsset; }
public void Initialise(ObjectPoolAsset pool, Faction faction) { m_pool = pool; m_faction = faction; }