示例#1
0
        public void UninstallTurret(ActorData ship)
        {
            ItemInstance temp = new ItemInstance(turret as TurretItem, 1);

            new ItemEvents().ItemPickupEvent(temp, ship.gameObject);
            this.turret = null;
            Destroy(transform.GetChild(0).gameObject);
            new TurretEvents().TurretUninstallSuccsessEvent(turret);
        }
示例#2
0
 public void UninstallTurret(TurretItem turretItem)
 {
     foreach (TurretSlot slot in turretSlots)
     {
         if (turretItem == slot.turret)
         {
             slot.UninstallTurret(GetComponent <ActorData>());
         }
     }
 }
示例#3
0
        public virtual void InstallTurret(TurretItem item)
        {
            turretData = item;

            if (this.GetComponent <SpriteRenderer>() != null)
            {
                this.GetComponent <SpriteRenderer>().sprite = turretData.TurretBase;
            }
            if (transform.GetChild(0).GetComponent <SpriteRenderer>() != null)
            {
                transform.GetChild(0).GetComponent <SpriteRenderer>().sprite = turretData.TurretBarrel;
            }
        }
示例#4
0
 public void InstallTurret(TurretItem turretItem, ActorData ship)
 {
     if (ship == GetComponent <ActorData>())
     {
         foreach (TurretSlot slot in turretSlots)
         {
             if (slot.turret == null)
             {
                 slot.InstallTurret(turretItem, GetComponent <ActorData>());
                 break;
             }
         }
     }
 }
示例#5
0
        public void InstallTurret(TurretItem TurretItem, ActorData ship)
        {
            if (turret != null)
            {
                //theres a turret here allready uninstall it
                UninstallTurret(ship);
            }
            if (TurretItem.Size != slotSize)
            {
                Debug.Log("Cant install, wrong size");
                return;
            }
            if (TurretItem.name == spesifficType.ToString() || spesifficType == SpesifficType.Universal)
            {
                Debug.Log("Can install");
                this.turret = TurretItem;

                new TurretEvents().TurretInstallSuccsessEvent(TurretItem, ship);

                if (TurretItem is WeaponTurret)
                {
                    GameObject g = Instantiate(Resources.Load("Weapons/TurretBaseObjects/WeaponTurretObject") as GameObject, transform);
                    g.GetComponent <WeaponTurretHandler>().InstallTurret(TurretItem as WeaponTurret);
                    turretObj = g.GetComponent <WeaponTurretHandler>();
                }

                if (TurretItem is MiningTurret)
                {
                    GameObject g = Instantiate(Resources.Load("Weapons/TurretBaseObjects/MiningTurretObject") as GameObject, transform);
                    g.GetComponent <MiningTurretHandler>().InstallTurret(TurretItem as MiningTurret);
                    turretObj = g.GetComponent <MiningTurretHandler>();
                }
            }
            else
            {
                Debug.Log("Cant install: " + TurretItem.name + " On Turret slot type: " + spesifficType.ToString());
            }
        }
示例#6
0
 public void TurretUninstallSuccsessEvent(TurretItem g) => OnTurretUninstallSuccsess?.Invoke(g);
示例#7
0
 public void TurretUninstallEvent(TurretItem g) => OnTurretUninstall?.Invoke(g);
示例#8
0
 public void TurretInstallFailEvent(TurretItem g) => OnTurretInstallFail?.Invoke(g);
示例#9
0
 public void TurretInstallSuccsessEvent(TurretItem g, ActorData s) => OnTurretInstallSuccsess?.Invoke(g, s);
示例#10
0
 public override void InstallTurret(TurretItem item)
 {
     base.InstallTurret(item);
 }
示例#11
0
 public override void InstallTurret(TurretItem item)
 {
     base.InstallTurret(item);
     laserRender.material = ((item as MiningTurret).LaserMaterial);
 }
示例#12
0
 private void TurretEvents_OnTurretInstallSuccsess(TurretItem item, ActorData ship)
 {
     Instantiate();
 }
示例#13
0
 private void TurretEvents_OnTurretUninstall(TurretItem item)
 {
     Instantiate();
 }