| WOlF | Дата: Понедельник, 16.03.2009, 08:49 | Сообщение # 1 |
|
Анубис
Группа: Администраторы
Сообщений: 136
Статус: Offline
| Code //MAGNIFIER
prontera.gat,147,196,3 script Deckard Cain 57,{
set @price, 100; //Price to identify one item
if (getskilllv(224)) set @price , @price-(5+4*getskilllv(224)); //Price after Rogue's discount
if(getskilllv(37)) { set @price, @price-(7+2*getskilllv(37)); //Price after Merchant's discount if (getskilllv(37) == 10) set @price, @price-(7+2*getskilllv(37)-1); //Price after Merchant's discount at max skill lvl. }
// Actual Script Begins Here // =========================
if(ident_Q == 0) goto L_PayToIdent; else if (ident_Q == 1) goto L_FreeIdent;
L_JustRescued: mes "[Deckard Cain]"; mes "Thank you for rescuing me!"; mes "As a token of my gratitude,"; mes "I will identify all of your items"; mes "for free from now on."; next; set ident_Q,1; goto L_Invcheck;
L_FreeIdent: mes "[Deckard Cain]"; mes "Hello again!"; mes "I will identify all your items for you."; next; goto L_InvCheck;
L_PayToIdent: mes "[Deckard Cain]"; mes "Hello there!"; mes "I can identify all your unidentified items."; mes "It's just "+@price+" Zeny each item."; next; menu "Sure.",-,"No thanks...",L_Bye;
L_InvCheck: getinventorylist; set @identify, 0;
for(set @i, 0; @i < @inventorylist_count; set @i, @i + 1) { if (@inventorylist_identify[@i] == 0) set @identify, @identify + 1; }
if (@identify == 0) goto L_Nothing; else if (ident_Q == 1) goto L_Identifying; else goto L_PaidToIdent;
L_PaidToIdent: mes "[Deckard Cain]"; if (@identify < 2) { mes "You've got one unidentified item in your inventory."; mes "I'll identify it for "+@price+" Zeny."; } else { mes "You've got "+@identify+" unidentified items in your inventory."; mes "I'll identify them for "+(@identify * @price)+" Zeny."; } mes "If you've got any ^00AA00Magnifiers^000000, I'll take those instead."; mes "Shall I start now?"; next; menu "Ok, let's go!",-,"What a ripoff...",L_Bye;
L_Identifying: getinventorylist; set @identified, 0;
if (ident_Q == 1) goto L_FIdent;
L_PIdent: for(set @i, 0; @i < @inventorylist_count; set @i, @i + 1) { if (@inventorylist_identify[@i] == 0) { if (countitem(611) > 0) delitem 611,1; else if (Zeny < @price) goto L_NoZeny; else set Zeny, Zeny - @price; delitem2 @inventorylist_id[@i],1,0,0,0,0,0,0,0; getitem @inventorylist_id[@i],1; set @identified, @identified + 1; goto L_Identified; } }
L_FIdent: for(set @i, 0; @i < @inventorylist_count; set @i, @i + 1) { if (@inventorylist_identify[@i] == 0) { delitem2 @inventorylist_id[@i],1,0,0,0,0,0,0,0; getitem @inventorylist_id[@i],1; set @identified, @identified + 1; } }
L_Identified: mes "[Deckard Cain]"; mes "Well, I identified everything!"; mes "I've identified a total of "+@identified+" items for you."; mes "Bye~"; close;
L_Nothing: mes "[Deckard Cain]"; mes "You don't have any unidentified Items."; close;
L_NoZeny: mes "[Deckard Cain]"; mes "You don't have enough Zeny."; close;
L_Bye: mes "[Deckard Cain]"; mes "..."; close;
}
//The Quest prontera.gat,149,194,3 script Kashya 58{ }
|
| |
|
|