usuwanie ekwipunku NPC 637 1

O temacie

Autor pawbuj

Zaczęty 9.04.2018 roku

Wyświetleń 637

Odpowiedzi 1

pawbuj

pawbuj

Użytkownicy
posty1626
Propsy135
ProfesjaSkrypter
  • Użytkownicy
mam problem  z czyszczeniem ekwipunku.

jeżeli dam warunek, że nie usuwamy założonych broni i pancerza to skrypt omija całą kategorię w ekwipunku.

kod poniżej.

var c_Item armor;
var c_Item meleeweap;
var c_Item rangedweapon;
var c_Item weapon;
func void Npc_ClearInventoryLoop (var c_npc npc, var int category)
{
    var int amount;
        amount = Npc_GetInvItemBySlot (npc, category, 0);
        armor = Npc_GetEquippedArmor(npc);     
        weapon = Npc_GetEquippedMeleeWeapon(npc);
        rangedweapon = Npc_GetEquippedRangedWeapon(npc);
        // print(ConcatStrings(item.name, IntToString(amount));

       
        if (amount>0)
       && (Hlp_GetInstanceID(item) != Hlp_GetInstanceID(weapon))
        && (Hlp_GetInstanceID(item) != Hlp_GetInstanceID(armor))
        && (Hlp_GetInstanceID(item) != Hlp_GetInstanceID(rangedweapon))   
        {
                NPC_RemoveInvItems (npc, Hlp_GetInstanceID (item), amount);
               
                Npc_ClearInventoryLoop(npc, category);
        }
        else if (category < INV_CAT_MAX-1)
        {
                //print(ConcatStrings("Zmiana kategorii na: ", IntToString(category+1));
                Npc_ClearInventoryLoop(npc, category+1);
        };
        AI_PrintScreen_Ext (ConcatStrings(self.name," traci ekwipunek (kara za pobicie)"), -1,43,"font_old_10_white.tga",_TIME_MESSAGE_LEVELUP);
};


func void Npc_ClearInventory (var c_npc npc)
{

Npc_ClearInventoryLoop(npc, 0);
};
 

Adanos

Adanos

Administrator
Szara eminencja
posty5221
Propsy3869
ProfesjaProgramista
  • Administrator
  • Szara eminencja
W skrypcie masz tak, że jeśli natrafi na założony ekwipunek, to zmień kategorię. Dodaj by zmieniał kategorię, gdy poza założonym ekwipunkiem, nie ma nic do usunięcia z kategorii. No i pomijaj założony element, by się nie zapętliło.
Albo usuń wszystko, a potem przywróć założone elementy.


0 użytkowników i 1 Gość przegląda ten wątek.
0 użytkowników
Do góry