Главная | Регистрация | Вход Приветствую Вас Гость | RSS
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Форум » Серверная часть Lineage 2 » Lineage 2 PTS » Npc nobless (Npc nobless)
Npc nobless
WolfДата: Понедельник, 26.04.2010, 18:34 | Сообщение # 1
Король Lineage 2
Группа: Администраторы
Сообщений: 356
Награды: 11 [ 10026 ]
Статус: Offline
НПЦ который выдает статус ноблеса когда есть 3 итема, проверка чара на статус ПК, наличее сабкласса, определенный уровень (в данном случае 75), проверка на статус нублеса
Quote
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


И для НПЦ нужно создать ШТМЛ:
nobless_001.htm - fnHi с ссылкой на выполнение команды setnoobless, ask == 644, пример ссылки:
Code
<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

 
Форум » Серверная часть Lineage 2 » Lineage 2 PTS » Npc nobless (Npc nobless)
  • Страница 1 из 1
  • 1
Поиск:

Хостинг от uCoz
>