Exemple #1
0
 void ShootPortal()
 {
     if (Input.GetButtonDown(PlayerInput.FirePortal))
     {
         float timeSinceLastLaunch = Time.time - LastPortalLaunchTime;
         if (timeSinceLastLaunch > PortalShootInterval &&
             !CurrentPortalColors.PrimaryColor.Equals(Color.clear))
         {
             if (FrontPointHitResult)
             {
                 if (FrontPointHit.transform.gameObject.layer == LayerMask.NameToLayer("Portal"))
                 {
                     return;
                 }
                 SignalData portalSpawnData = new SignalData();
                 portalSpawnData.set("SpawnPosition", FrontPointHit.point);
                 portalSpawnData.set("SpawnDirection", FrontPointHit.normal);
                 portalSpawnData.set("ArenaId", ArenaId);
                 portalSpawnData.set("PortalColors", CurrentPortalColors);
                 PortalSpawnSignal.fire(portalSpawnData);
                 LastPortalLaunchTime = Time.time;
                 ChangeCurrentPortalColor(new PortalColorData(Color.clear, Color.clear));
             }
         }
     }
 }
Exemple #2
0
    IEnumerator killSwitch()
    {
        yield return(new WaitForSeconds(TimeoutInterval));

        Destroy(this.gameObject);
        SignalData data = new SignalData();

        data.set("ArenaId", ArenaId);
        data.set("PortalColors", PortalColors);
        PortalTimeoutSignal.fire(data);
    }
Exemple #3
0
 void OnTriggerEnter(Collider other)
 {
     if (other.tag == "Player")
     {
         PlayerShoot playerShoot = other.gameObject.GetComponent <PlayerShoot>();
         if (playerShoot != null)
         {
             playerShoot.ChangeCurrentPortalColor(PortalColors);
             SignalData fluidUsedData = new SignalData();
             fluidUsedData.set("location", Location);
             fluidUsedData.set("arenaId", Arenaid);
             PortalFluidUsedSignal.fire(fluidUsedData);
             StartCoroutine(DestroyAfterAnimation());
         }
     }
 }
Exemple #4
0
    public void DestroyBullet()
    {
        SignalData data = new SignalData();

        data.set("Bullet", this);
        BulletDestroySignal.fire(data);
        Destroy(this.gameObject);
    }
Exemple #5
0
 void Shoot()
 {
     if (Input.GetButtonDown(PlayerInput.Fire))
     {
         float timeSinceLastLaunch = Time.time - LastBulletLaunchTime;
         if (timeSinceLastLaunch > ShootInterval)
         {
             SignalData spawnData = new SignalData();
             spawnData.set("launchPoint", BulletLaunchPoint);
             spawnData.set("playerHashCode", this.GetHashCode());
             spawnData.set("arenaId", ArenaId);
             spawnData.set("bulletType", BulletType);
             BulletSpawnSignal.fire(spawnData);
             LastBulletLaunchTime = Time.time;
         }
     }
 }