Exemple #1
0
 public override void OnEquip(ref gameItem currItem)
 {
     loadedAsset  = Resources.Load(string.Concat("Items/Helpers/", assetName));
     spawnedAsset = Instantiate((GameObject)loadedAsset, SCP_UI.instance.CanvasPos);
     this.Overlay = Resources.Load <Sprite>(string.Concat("Items/Docs/", filename));
     spawnedAsset.GetComponent <Text>().text = GameController.instance.globalStrings[stringIndex];
 }
Exemple #2
0
    public override void OnEquip(ref gameItem currItem)
    {
        this.Overlay = Resources.Load <Sprite>(string.Concat("Items/Docs/", filename));

        /*if (this.itemName == "doc372")
         *  SCP_UI.instance.bottomScrible.text = GameController.instance.globalStrings[0];*/
    }
    public static void Item(Packet _packet)
    {
        int      id         = _packet.ReadInt();
        int      itemNumber = _packet.ReadInt();
        gameItem item       = GameManager.instance.gameItems[id].GetComponentInChildren <gameItem>();

        if (itemNumber < 6)
        {
            inventory.instance.Add(item.item);
        }
        else if (itemNumber == 6)
        {
            EquipmentInventory.instance.Add(item.item);
            ClientSend.AddEffects(4);
        }
        else if (itemNumber == 7)
        {
            EquipmentInventory.instance.Add(item.item);
            ClientSend.AddEffects(8);
        }
        else if (itemNumber == 8)
        {
            EquipmentInventory.instance.Add(item.item);
            ClientSend.AddEffects(12);
        }
    }
    // Update is called once per frame
    void OnEnable()
    {
        currNav = GameController.instance.player.GetComponent <Player_Control>().equipment[(int)bodyPart.Hand];
        Nav     = ((Equipable_Nav)ItemController.instance.items[currNav.itemFileName]);
        if (Nav.isOnline)
        {
            GameController.instance.Map_RenderFull();
            Offline.SetActive(false);
        }
        else
        {
            GameController.instance.Map_RenderHalf();
            Offline.SetActive(true);
        }

        if (Nav.SpendBattery)
        {
            Battery.SetActive(true);
        }
        else
        {
            Battery.SetActive(false);
        }

        if (currNav.valFloat < 0 && Nav.SpendBattery)
        {
            Display.SetActive(false);
        }
        else
        {
            Display.SetActive(true);
        }
    }
 public static void SpawnItem()
 {
     for (int i = 0; i < 20; i++)
     {
         Vector3    pos      = new Vector3(Random.Range(-300, 300), 1, Random.Range(-300, 300));
         int        item     = Random.Range(0, 7);
         GameObject prop     = Instantiate(GameManager.instance.Items[item], pos, Quaternion.identity);
         gameItem   thisItem = prop.GetComponentInChildren <gameItem>();
         thisItem.id = i;
         GameManager.instance.gameItems[i] = prop;
         Thread.Sleep(10);
         RaycastHit hit;
         if (Physics.Raycast(GameManager.instance.gameItems[i].transform.position, -Vector3.up, out hit))
         {
             pos.y = hit.point.y + 1;
             GameManager.instance.gameItems[i].transform.position = pos;
         }
         else if (Physics.Raycast(GameManager.instance.gameItems[i].transform.position, Vector3.up, out hit))
         {
             pos.y = hit.point.y - 1;
         }
         ServerSend.SpawnItem(i, item, GameManager.instance.gameItems[i].transform.position);
         Thread.Sleep(10);
     }
 }
Exemple #6
0
    void Helper(GameObject newObject, Item item, Vector3 position)
    {
        gameItem newItem = new gameItem(item.name);

        newObject.GetComponent <Object_Item>().item = newItem;
        newObject.GetComponent <Object_Item>().id   = GameController.instance.AddItem(position, newItem);
        Debug.Log(newObject.GetComponent <Object_Item>().id);
        newObject.GetComponent <Object_Item>().Spawn();
    }
 // Start is called before the first frame update
 public override void Use(ref gameItem currItem)
 {
     //Debug.Log("Current inv = " + currItem.valInt);
     if (currItem.valInt == -1)
     {
         currItem.valInt = ItemController.instance.invs.Count;
         ItemController.instance.NewInv();
     }
     ItemController.instance.ChangeInv(currItem.valInt);
 }
    public static void spawnItem(Packet _packet)
    {
        int        key      = _packet.ReadInt();
        int        item     = _packet.ReadInt();
        Vector3    pos      = _packet.ReadVector3();
        GameObject prop     = Instantiate(GameManager.instance.Items[item], pos, Quaternion.identity);
        gameItem   thisItem = prop.GetComponentInChildren <gameItem>();

        thisItem.id = key;
        GameManager.instance.gameItems[key] = prop;
    }
Exemple #9
0
    public void StartRadio()
    {
        /*sfxStatic.volume = 0.2f;
         * sfxRadio.volume = 1f;
         * isActive = true;*/

        radio.SetActive(true);
        TurnRadio();
        currRadio = GameController.instance.player.GetComponent <Player_Control>().equipment[(int)bodyPart.Hand];
        _Radio    = ((Equipable_Radio)ItemController.instance.items[currRadio.itemFileName]);
        sfxStatic.PlayOneShot(change);
    }
Exemple #10
0
    public override void Use(ref gameItem currItem)
    {
        Player_Control player = GameController.instance.player.GetComponent <Player_Control>();

        if (player.equipment[(int)this.part] == null || ItemController.instance.items[player.equipment[(int)this.part].itemFileName].itemName != this.itemName)
        {
            player.ACT_Equip(currItem);
        }
        else
        {
            player.ACT_UnEquip(part);
        }
    }
Exemple #11
0
    public void Spawn()
    {
        item = new gameItem(itemOG.name);
        GameObject   model    = ItemController.instance.items[item.itemFileName].ItemModel;
        MeshFilter   mesh     = model.GetComponentInChildren <MeshFilter>(true);
        MeshRenderer renderer = model.GetComponentInChildren <MeshRenderer>(true);

        itemMesh   = mesh.sharedMesh;
        itemMats   = renderer.sharedMaterials;
        col.center = ItemController.instance.items[item.itemFileName].colCenter;
        col.size   = ItemController.instance.items[item.itemFileName].colSize;
        body.mass  = ItemController.instance.items[item.itemFileName].mass;
    }
Exemple #12
0
 public static void pickupItem(int _fromClient, int id, int itemNumber)
 {
     if (GameManager.instance.gameItems[id] != null)
     {
         gameItem item = GameManager.instance.gameItems[id].GetComponentInChildren <gameItem>();
         if (item.pickup)
         {
             item.pickup = false;
             ServerSend.Item(id, itemNumber, _fromClient);
         }
     }
     else
     {
         ServerSend.RemoveItem(id);
     }
 }
Exemple #13
0
 public override bool Mix(ref gameItem currItem, ref gameItem toMix)
 {
     if (!ReceiveBattery)
     {
         return(false);
     }
     if (ItemController.instance.items[toMix.itemFileName].itemName.Equals("bat_nor"))
     {
         currItem.valFloat = 100;
         return(true);
     }
     else
     {
         return(false);
     }
 }
 public override bool Mix(ref gameItem currItem, ref gameItem toMix)
 {
     if (ItemController.instance.items[toMix.itemFileName] is Document_Equipable || ItemController.instance.items[toMix.itemFileName] is Equipable_Key)
     {
         if (currItem.valInt == -1)
         {
             currItem.valInt = ItemController.instance.invs.Count;
             ItemController.instance.NewInv();
         }
         if (ItemController.instance.AddItem(toMix, currItem.valInt) != -1)
         {
             return(true);
         }
         else
         {
             return(false);
         }
     }
     else
     {
         return(false);
     }
 }
    public int AddItem(gameItem item, int inv)
    {
        for (int i = 0; i < slots.Length; i++)
        {
            if (invs[inv][i] == null)
            {
                invs[inv][i] = item;
                Debug.Log(item.itemFileName);
                SCP_UI.instance.ItemSFX(items[item.itemFileName].SFX);

                if (items[item.itemFileName] is Equipable_Wear && ((Equipable_Wear)items[item.itemFileName]).autoEquip)
                {
                    ChangeInv(inv);
                    currInv   = inv;
                    currhover = i;
                    slots[i].Use(true);
                }

                return(i);
            }
        }

        return(-1);
    }
Exemple #16
0
 public override void OnDequip(ref gameItem currItem)
 {
     DestroyImmediate(spawnedAsset);
     Resources.UnloadUnusedAssets();
 }
 public override void Use(ref gameItem currItem)
 {
     this.part = bodyPart.Hand;
     base.Use(ref currItem);
 }
 public override void OnDequip(ref gameItem currItem)
 {
     base.OnDequip(ref currItem);
     SCP_UI.instance.radio.StopRadio();
 }
Exemple #19
0
 // Start is called before the first frame update
 public override void OnEquip(ref gameItem currItem)
 {
     loadedAsset  = Resources.Load <GameObject>(string.Concat("Items/Helpers/", assetName));
     spawnedAsset = Instantiate(loadedAsset, SCP_UI.instance.CanvasPos);
 }
 public override void Use(ref gameItem currItem)
 {
     GameController.instance.playercache.SetEffect(this);
 }
Exemple #21
0
 public override void Use(ref gameItem currItem)
 {
     GameController.instance.npcController.simpList[(int)SimpNpcList.bell].isActive = true;
     GameController.instance.PlayHorror(bellSounds[Random.Range(0, bellSounds.Length - 1)], GameController.instance.playercache.transform, npc.none);
 }
 public virtual bool Mix(ref gameItem currItem, ref gameItem toMix)
 {
     return(false);
 }
 public virtual void Use(ref gameItem currItem)
 {
 }
    public void ACT_Equip(gameItem item)
    {
        Equipable_Wear itemData = (Equipable_Wear)ItemController.instance.items[item.itemFileName];

        if (equipment[(int)itemData.part] != null)
        {
            ACT_UnEquip(itemData.part);
        }

        switch (itemData.part)
        {
        case bodyPart.Head:
        {
            equipment[(int)itemData.part] = item;
            if (itemData.isUnique)
            {
                SubtitleEngine.instance.playFormatted("playStrings", "play_equip_uni", "itemStrings", itemData.getName());
            }
            else if (itemData.isFem)
            {
                SubtitleEngine.instance.playFormatted("playStrings", "play_equip_fem", "itemStrings", itemData.getName());
            }
            else
            {
                SubtitleEngine.instance.playFormatted("playStrings", "play_equip_male", "itemStrings", itemData.getName());
            }

            ItemController.instance.equip[headInv][headSlot] = false;
            headSlot = ItemController.instance.currhover;
            headInv  = ItemController.instance.currInv;
            ItemController.instance.equip[headInv][headSlot] = true;
            break;
        }

        case bodyPart.Body:
        {
            equipment[(int)itemData.part] = item;
            if (itemData.isUnique)
            {
                SubtitleEngine.instance.playFormatted("playStrings", "play_equip_uni", "itemStrings", itemData.getName());
            }
            else if (itemData.isFem)
            {
                SubtitleEngine.instance.playFormatted("playStrings", "play_equip_fem", "itemStrings", itemData.getName());
            }
            else
            {
                SubtitleEngine.instance.playFormatted("playStrings", "play_equip_male", "itemStrings", itemData.getName());
            }

            ItemController.instance.equip[bodyInv][bodySlot] = false;
            bodySlot = ItemController.instance.currhover;
            bodyInv  = ItemController.instance.currInv;
            ItemController.instance.equip[bodyInv][bodySlot] = true;



            break;
        }

        case bodyPart.Any:
        {
            equipment[(int)itemData.part] = item;
            if (itemData.isUnique)
            {
                SubtitleEngine.instance.playFormatted("playStrings", "play_equip_uni", "itemStrings", itemData.getName());
            }
            else if (itemData.isFem)
            {
                SubtitleEngine.instance.playFormatted("playStrings", "play_equip_fem", "itemStrings", itemData.getName());
            }
            else
            {
                SubtitleEngine.instance.playFormatted("playStrings", "play_equip_male", "itemStrings", itemData.getName());
            }

            ItemController.instance.equip[anyInv][anySlot] = false;
            anySlot = ItemController.instance.currhover;
            anyInv  = ItemController.instance.currInv;
            ItemController.instance.equip[anyInv][anySlot] = true;
            break;
        }

        case bodyPart.Hand:
        {
            equipment[(int)itemData.part] = item;
            if (itemData.isUnique)
            {
                SubtitleEngine.instance.playFormatted("playStrings", "play_equip_uni", "itemStrings", itemData.getName());
            }
            else if (itemData.isFem)
            {
                SubtitleEngine.instance.playFormatted("playStrings", "play_equip_fem", "itemStrings", itemData.getName());
            }
            else
            {
                SubtitleEngine.instance.playFormatted("playStrings", "play_equip_male", "itemStrings", itemData.getName());
            }


            ItemController.instance.equip[handInv][handSlot] = false;
            handSlot = ItemController.instance.currhover;
            handInv  = ItemController.instance.currInv;
            ItemController.instance.equip[handInv][handSlot] = true;

            break;
        }
        }

        itemData.OnEquip(ref item);

        if (itemData.hasEffect)
        {
            SetEffect(itemData);
        }
        ReloadEquipment();
    }
Exemple #25
0
 public override void OnDequip(ref gameItem currItem)
 {
     base.OnDequip(ref currItem);
     SCP_UI.instance.SNav.SetActive(false);
 }
Exemple #26
0
 public override void OnDequip(ref gameItem currItem)
 {
     Resources.UnloadAsset(this.Overlay);
 }
 public virtual void OnDequip(ref gameItem currItem)
 {
 }