Npc_nobless
2 replies597 viewsCurrently viewing: 1
· 12/28/2008, 11:35 AM
мб кому то пригодится...
нпс который выдает статус нублеса за какието три определенные итема, проверка чара на статус ПК, наличее сабкласса, определенный уровень (в данном случае 75), проверка на статус нублеса
ai
Раскрывающийся текст
class 1 nobless_npc : default_npc
parameter_define_begin
int Itemn 1870
int Itemn1 1875
int Itemn2 1874
int Amount 1
int Amount1 1
int Amount2 1
parameter_define_end
handler 3 121 // TALKED
variable_begin
"talker"
"myself"
"_choiceN"
"_code"
"_from_choice"
variable_end
push_event // talker
push_const 40
add
fetch_i // karma
push_const 468
add
fetch_i4
push_const 0
greater
branch_false L2
L1
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
S881. "nobless_002.htm"
push_string S881
func_call 184680516 // func[ShowPage]
shift_sp -2
shift_sp -1
jump L3
L2
push_event // talker
push_const 40
add
fetch_i // level
push_const 1092
add
fetch_i4
push_const 74
less_equal
branch_false L5
L4
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
S882. "nobless_007.htm"
push_string S882
func_call 184680516 // func[ShowPage]
shift_sp -2
shift_sp -1
jump L6
L5
push_event // talker
push_const 40
add
fetch_i // subjob_id
push_const 152
add
fetch_i4
push_const 0
equal
branch_false L8
L7
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
S883. "nobless_006.htm"
push_string S883
func_call 184680516 // func[ShowPage]
shift_sp -2
shift_sp -1
jump L9
L8
push_event // talker
push_const 40
add
fetch_i // nobless_type
push_const 156
add
fetch_i4
push_const 1
equal
branch_false L11
L10
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
S884. "nobless_008.htm"
push_string S884
func_call 184680516 // func[ShowPage]
shift_sp -2
shift_sp -1
jump L12
L11
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
S885. "nobless_001.htm"
push_string S885
func_call 184680516 // func[ShowPage]
shift_sp -2
shift_sp -1
L12
L9
L6
L3
handler_end
handler 32 167 // MENU_SELECTED
variable_begin
"talker"
"ask"
"myself"
"_choiceN"
"_code"
"_from_choice"
variable_end
push_event // ask
push_const 160
add
fetch_i4
push_const 644
equal
push_reg_sp
fetch_i
branch_false L15
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
push_parameter Itemn
func_call 184680579 // func[OwnItemCount]
shift_sp -2
push_parameter Amount
greater_equal
push_reg_sp
fetch_i
branch_false L16
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
push_parameter Itemn1
func_call 184680579 // func[OwnItemCount]
shift_sp -2
push_parameter Amount1
greater_equal
push_reg_sp
fetch_i
branch_false L17
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
push_parameter Itemn2
func_call 184680579 // func[OwnItemCount]
shift_sp -2
push_parameter Amount2
greater_equal
and
L17
and
L16
and
L15
branch_false L14
L13
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
push_parameter Itemn
push_parameter Amount
func_call 184746114 // func[DeleteItem1]
shift_sp -3
shift_sp -1
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
push_parameter Itemn1
push_parameter Amount1
func_call 184746114 // func[DeleteItem1]
shift_sp -3
shift_sp -1
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
push_parameter Itemn2
push_parameter Amount2
func_call 184746114 // func[DeleteItem1]
shift_sp -3
shift_sp -1
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
push_const 7694
push_const 1
func_call 184746111 // func[GiveItem1]
shift_sp -3
shift_sp -1
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
S886. "ItemSound.quest_finish"
push_string S886
func_call 184680685 // func[SoundEffect]
shift_sp -2
shift_sp -1
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
func_call 184615315 // func[SetNobless]
shift_sp -1
shift_sp -1
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
S887. "nobless_005.htm"
push_string S887
func_call 184680516 // func[ShowPage]
shift_sp -2
shift_sp -1
jump L18
L14
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
S888. "nobless_003.htm"
push_string S888
func_call 184680516 // func[ShowPage]
shift_sp -2
shift_sp -1
L18
handler_end
class_end
parameter_define_begin
int Itemn 1870
int Itemn1 1875
int Itemn2 1874
int Amount 1
int Amount1 1
int Amount2 1
parameter_define_end
handler 3 121 // TALKED
variable_begin
"talker"
"myself"
"_choiceN"
"_code"
"_from_choice"
variable_end
push_event // talker
push_const 40
add
fetch_i // karma
push_const 468
add
fetch_i4
push_const 0
greater
branch_false L2
L1
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
S881. "nobless_002.htm"
push_string S881
func_call 184680516 // func[ShowPage]
shift_sp -2
shift_sp -1
jump L3
L2
push_event // talker
push_const 40
add
fetch_i // level
push_const 1092
add
fetch_i4
push_const 74
less_equal
branch_false L5
L4
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
S882. "nobless_007.htm"
push_string S882
func_call 184680516 // func[ShowPage]
shift_sp -2
shift_sp -1
jump L6
L5
push_event // talker
push_const 40
add
fetch_i // subjob_id
push_const 152
add
fetch_i4
push_const 0
equal
branch_false L8
L7
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
S883. "nobless_006.htm"
push_string S883
func_call 184680516 // func[ShowPage]
shift_sp -2
shift_sp -1
jump L9
L8
push_event // talker
push_const 40
add
fetch_i // nobless_type
push_const 156
add
fetch_i4
push_const 1
equal
branch_false L11
L10
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
S884. "nobless_008.htm"
push_string S884
func_call 184680516 // func[ShowPage]
shift_sp -2
shift_sp -1
jump L12
L11
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
S885. "nobless_001.htm"
push_string S885
func_call 184680516 // func[ShowPage]
shift_sp -2
shift_sp -1
L12
L9
L6
L3
handler_end
handler 32 167 // MENU_SELECTED
variable_begin
"talker"
"ask"
"myself"
"_choiceN"
"_code"
"_from_choice"
variable_end
push_event // ask
push_const 160
add
fetch_i4
push_const 644
equal
push_reg_sp
fetch_i
branch_false L15
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
push_parameter Itemn
func_call 184680579 // func[OwnItemCount]
shift_sp -2
push_parameter Amount
greater_equal
push_reg_sp
fetch_i
branch_false L16
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
push_parameter Itemn1
func_call 184680579 // func[OwnItemCount]
shift_sp -2
push_parameter Amount1
greater_equal
push_reg_sp
fetch_i
branch_false L17
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
push_parameter Itemn2
func_call 184680579 // func[OwnItemCount]
shift_sp -2
push_parameter Amount2
greater_equal
and
L17
and
L16
and
L15
branch_false L14
L13
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
push_parameter Itemn
push_parameter Amount
func_call 184746114 // func[DeleteItem1]
shift_sp -3
shift_sp -1
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
push_parameter Itemn1
push_parameter Amount1
func_call 184746114 // func[DeleteItem1]
shift_sp -3
shift_sp -1
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
push_parameter Itemn2
push_parameter Amount2
func_call 184746114 // func[DeleteItem1]
shift_sp -3
shift_sp -1
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
push_const 7694
push_const 1
func_call 184746111 // func[GiveItem1]
shift_sp -3
shift_sp -1
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
S886. "ItemSound.quest_finish"
push_string S886
func_call 184680685 // func[SoundEffect]
shift_sp -2
shift_sp -1
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
func_call 184615315 // func[SetNobless]
shift_sp -1
shift_sp -1
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
S887. "nobless_005.htm"
push_string S887
func_call 184680516 // func[ShowPage]
shift_sp -2
shift_sp -1
jump L18
L14
push_event // myself
push_const 704
add
fetch_i
push_event // talker
push_const 40
add
fetch_i
S888. "nobless_003.htm"
push_string S888
func_call 184680516 // func[ShowPage]
shift_sp -2
shift_sp -1
L18
handler_end
class_end
html шарить не стал, каждый под себя сам напишет то что ему необходимо, описание:
nobless_001.htm - fnHi с ссылкой на выполнение команды setnoobless, ask == 644, пример ссылки:
Код
<a action="bypass -h menu_select?ask=644&reply=1">получить нублес</a>
nobless_002.htm - если чар ПК
nobless_003.htm - недостаточно итемов
nobless_005.htm - конечное диалоговое окно после удачного получения статуса нублеса
nobless_006.htm - отсутствие сабкласса
nobless_007.htm - недостаточно высокий уровень
nobless_008.htm - уже нублес
в npcdata.txt npc_ai={[nobless_npc];{[fnHi]=[nobless_001.htm]}
parameter_define_begin
int Itemn 1870 //необходимый итем 1
int Itemn1 1875 //необходимый итем 2
int Itemn2 1874 //необходимый итем 3
int Amount 1 //колчество итемов 1
int Amount1 1 //колчество итемов 2
int Amount2 1 //колчество итемов 3
parameter_define_end
0
Topic is closed for replies

