66 lines
1.8 KiB
C#
66 lines
1.8 KiB
C#
using System;
|
|
using UnityEngine;
|
|
|
|
namespace Weapons.Projectiles
|
|
{
|
|
public class FlameProjectile : ProjectileBase
|
|
{
|
|
public double destroyDeltaTime = 1d;
|
|
private double destroyTime;
|
|
private Transform _Origin;
|
|
private String _Tag;
|
|
private bool status =false;
|
|
private InputHandler _Target;
|
|
private void Awake()
|
|
{
|
|
_Origin = transform;
|
|
}
|
|
|
|
private void Start()
|
|
{
|
|
destroyTime = Time.time + destroyDeltaTime;
|
|
}
|
|
|
|
public void InstantiateOrigin(PlayerEntity player,Transform position, string nameTag)
|
|
{
|
|
_Origin = position.Find("FlamethrowerSpray");
|
|
_Tag = nameTag;
|
|
_Origin.gameObject.SetActive(true);
|
|
_Target = player.transform.GetComponent<InputHandler>();
|
|
destroyTime = Time.time + destroyDeltaTime;
|
|
status = true;
|
|
}
|
|
private void FixedUpdate()
|
|
{
|
|
if (!status)
|
|
{
|
|
return;
|
|
}
|
|
if (!_Target)
|
|
{
|
|
return;
|
|
}
|
|
if (_Target.FireKeyPressed)
|
|
{
|
|
var transform1 = transform;
|
|
transform1.position = _Origin.position;
|
|
transform1.rotation = _Origin.rotation;
|
|
_Origin.gameObject.SetActive(true);
|
|
}
|
|
else
|
|
{
|
|
if (status)
|
|
status = false;
|
|
_Origin.gameObject.SetActive(false);
|
|
}
|
|
}
|
|
|
|
|
|
protected override void PooledDestroy()
|
|
{
|
|
// string baseName = NetworkPooler.GetBaseName(transform.name);
|
|
// NetworkPooler.Instance.PooledDestroy(baseName, gameObject);
|
|
// status = false;
|
|
}
|
|
}
|
|
} |