Комбо Предметов Детали

Комбо Предметов #5761

Размер Комбо: 2
Предметы Комбо
Эффект Комбо
.@r = getequiprefinerycnt(EQI_HEAD_TOP);
bonus bDelayrate,-2*(.@r/4);
if (.@r>=7) {
   bonus2 bHPDrainRate,50,7;
   autobonus "{ bonus2 bHPRegenRate,1500,1000; }",40,10000,BF_MAGIC,"{ specialeffect2 EF_HEAL; }";
}
if (.@r>=9) {
   bonus bAtkRate,5;
   bonus bMatkRate,5;
   bonus bPAtk,3;
   bonus bSMatk,3;
}
if (.@r>=11)
   bonus bFixedCast,-200;
Справка по Скрипту
getequiprefinerycnt Команда
getequiprefinerycnt
Сигнатура:
getequiprefinerycnt(<equipment slot>{,<char_id>})
Описание:
slot. For a list of equipment slots see 'getequipid'. Can be used to check if you have reached a maximum refine value, default for this is +10:
Пример:
if (getequiprefinerycnt(EQI_HEAD_TOP) < 10)
mes "I will now upgrade your " + getequipname(EQI_HEAD_TOP);
else
mes "Sorry, it's not possible to refine hats better than +10";
close;
bDelayrate Бонус Предмета
bDelayrate
Сигнатура:
bonus bDelayrate,n;
Описание:
Increases skill delay by n%
if Команда
if
Сигнатура:
if (<condition>) <statement>;
Описание:
This is the basic conditional statement command, and just about the only one available in this scripting language. The condition can be any expression. All expressions resulting in a non-zero value will be considered True, including negative values. All expressions resulting in a zero are false. If the expression results in True, the statement will be executed. If it isn't true, nothing happens and we move on to the next line of the script. For more information on conditional operators see the operators section above. bothering to store it in a specific variable: More examples of using the 'if' command in the real world: Example 1: Example 2: Notice that examples 1 and 2 have the same effect. Example 3: Example 4: Example 5: See 'strcharinfo' for an explanation of what this function does. Example 6: Using complex conditions. The script engine also supports nested 'if' statements: If the condition isn't met, it'll do the action following the 'else'. We can also group several actions depending on a condition: Remember that if you plan to do several actions upon the condition being false, and you forget to use the curly braces (the { } ), the second action will be executed regardless the output of the condition, unless of course, you stop the execution of the script if the condition is true (that is, in the first grouping using a return; , and end; or a close; ) Also, you can have multiple conditions nested or chained.
Пример:
if (1)  mes "This will always print.";
if (0)  mes "And this will never print.";
if (5)  mes "This will also always print.";
if (-1) mes "Funny as it is, this will also print just fine.";
if (strcharinfo(0) == "Daniel Jackson") mes "It is true, you are Daniel!";
.@answer = 1;
input .@input;
if (.@input == .@answer)
close;
mes "Sorry, your answer is incorrect.";
close;
.@answer = 1;
input .@input;
if (.@input != .@answer)
mes "Sorry, your answer is incorrect.";
close;
.@count++;
mes "[Forgetful Man]";
if (.@count == 1) mes "This is the first time you have talked to me.";
if (.@count == 2) mes "This is the second time you have talked to me.";
if (.@count == 3) mes "This is the third time you have talked to me.";
if (.@count == 4) {
mes "This is the fourth time you have talked to me.";
mes "I think I am getting amnesia, I have forgotten about you...";
.@count = 0;
}
close;
mes "[Quest Person]";
if (countitem(512) < 1) {  // 512 is the item ID for Apple, found in db/item_db.yml
mes "Can you please bring me an apple?";
close;
}
mes "Oh, you brought an Apple!";
mes "I didn't want it, I just wanted to see one.";
close;
mes "[Person Checker]";
if ($@name$ == "") {  // global variable not yet set
mes "Please tell me someones name";
next;
input $@name$;
$@name2$ = strcharinfo(0);
mes "[Person Checker]";
mes "Thank you.";
close;
}
if ($@name$ == strcharinfo(0)) {  // player name matches $@name$
mes "You are the person that " + $@name2$ + " just mentioned.";
mes "Nice to meet you!";
// reset the global variables
$@name$ = "";
$@name2$ = "";
close;
}
mes "You are not the person that " + $name2$ + " mentioned.";
close;
mes "[Multiple Checks]";
if (@queststarted == 1 && countitem(512) >= 5) {
mes "Well done, you have started the quest and brought me 5 Apples.";
@queststarted = 0;
delitem 512,5;
close;
}
mes "Please bring me 5 apples.";
@queststarted = 1;
close;
if (<condition>)
dothis;
else
dothat;
if (<condition>) {
dothis1;
dothis2;
} else {
dothat1;
dothat2;
dothat3;
}
if (<condition 1>)
dothis;
else if (<condition 2>) {
dothat;
end;
} else
dothis;
bHPDrainRate Бонус Предмета
bHPDrainRate
Сигнатура:
bonus2 bHPDrainRate,x,n;
Описание:
Adds a x/10% chance to drain n% HP from inflicted damage when attacking
bHPRegenRate Бонус Предмета
bHPRegenRate
Сигнатура:
bonus2 bHPRegenRate,n,t;
Описание:
Gain n HP every t milliseconds
specialeffect2 Команда
specialeffect2
Сигнатура:
specialeffect2 <effect number>{,<send_target>{,"<Player Name>"}};
Описание:
This command behaves identically to 'specialeffect', but the effect will be centered on the invoking character's sprite. <Player name> parameter will display <effect number> on another Player than the one currently attached to the script. Like with specialeffect, when specifying a player, <send_target> must be supplied, specifying AREA will retain the default behavior of the command.
bAtkRate Бонус Предмета
bAtkRate
Сигнатура:
bonus bAtkRate,n;
Описание:
ATK + n% that won't interfere with Damage modifier and SC_EDP (renewal mode only)
bMatkRate Бонус Предмета
bMatkRate
Сигнатура:
bonus bMatkRate,n;
Описание:
Magical attack power + n%
bPAtk Бонус Предмета
bPAtk
Сигнатура:
bonus bPAtk,n;
Описание:
PAtk + n
bSMatk Бонус Предмета
bSMatk
Сигнатура:
bonus bSMatk,n;
Описание:
SMatk + n
bFixedCast Бонус Предмета
bFixedCast
Сигнатура:
bonus bFixedCast,t;
Описание:
Increases fixed cast time of all skills by t milliseconds (has effect in RENEWAL_CAST only)