Dodatkowe obrażenia dla broni w zależności od poziomu postaci 2022 2

O temacie

Autor pawbuj

Zaczęty 2.12.2012 roku

Wyświetleń 2022

Odpowiedzi 2

pawbuj

pawbuj

Użytkownicy
posty1625
Propsy135
ProfesjaSkrypter
  • Użytkownicy
witam po kilkumiesiecznej przerwie.

pracuję nad dodatkowymi obrażeniami do łuku, własciwie poziom obrażeń w trakcie nakładania wyświetla sie właściwie, jednak w ekwipunku mam kolejno wartości sprzed nabicia poziomu.

:INSTANCE ItRw_Bow_Long_04a (C_Item)
{
name = "Łuk Vincenta";

mainflag = ITEM_KAT_FF;
flags = ITEM_BOW;
material = MAT_WOOD;

value = 360;//180;

//damageTotal = 52;
damagetype = DAM_FLY|DAM_FIRE;
damage[DAM_INDEX_FIRE] = dam_firebow;
damage[DAM_INDEX_FLY] = dam_flybow;
munition = ItAmArrow;
cond_atr[2]   = ATR_DEXTERITY;
cond_value[2]   = 37;//32
visual = "ItRw_Bow_Long_04.mms";

description = name;
TEXT[0] ="Obrażenia łuku zwiększa poziom postaci.";
TEXT[1] = "Obrażenia od ognia"; COUNT[1] = dam_firebow;
TEXT[2] = "Obrażenia siły odrzutu"; COUNT[2] = dam_flybow;
TEXT[4] = NAME_Dex_needed; COUNT[4] = cond_value[2];
TEXT[5] = NAME_Value; COUNT[5] = value;
on_equip = Equip_ItRw_Bow_Long_04a;
//on_unequip = UnEquip_ItRw_Bow_Long_04a;
};
FUNC VOID Equip_ItRw_Bow_Long_04a()
{

PrintScreen (ConcatStrings ("Obrażenia siły ogniowej:", IntToString(dam_firebow)),9,81,"FONT_OLD_10_WHITE.TGA",4);
PrintScreen (ConcatStrings ("Obrażenia siły odrzutowej:", IntToString(dam_flybow)),9,84,"FONT_OLD_10_WHITE.TGA",4);
//PrintScreen ("Obrażenia siły odrzutowej:", x1skill,y1skill,"FONT_OLD_10_WHITE.TGA",4);
PrintScreen ("H", 3,80,"PAWBUJ2.TGA",4);//MIECZ

};
 

inż. Avallach

inż. Avallach

Administrator
posty7661
Propsy5239
NagrodyV
ProfesjaProgramista
  • Administrator
Musisz odświeżać tekst opisu po każdym nabiciu poziomu. Niestety to wymaga posiadania referencji do itemu, co w ZenGinie  nie jest wcale banalne do zdobycia (nie ma funkcji Hlp_GetItem). Nie napiszę ci tego, bo dawno nie pisałem żadnych skryptów i pewnie użyłbym czegoś czego ten język nie potrafi, musisz sam pokombinować.
Sprawdź czy da się przeprowadzać konwersję typu "w domyśle":
var c_item pochodnia; pochodnia = itlstorch;Jeśli nie, to zostawałaby tylko funkcja sprawdzająca aktualnie założoną broń, której użycie wymagałoby nieco nakombinowania.

Ogólnie problem tkwi w tym że domyślnie parser konwertuje identyfikatory na ich całkowitoliczbowe indeksy, a tylko w określonych sytuacjach na obiekty.

pawbuj

pawbuj

Użytkownicy
posty1625
Propsy135
ProfesjaSkrypter
  • Użytkownicy
udało się to zrobić, tylko w nast. sposób : podmieniłem itemy o takich samych wyglądach.
 


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