Перейти к содержанию

kael

Продвинутый пользователь
  • Постов

    64
  • Зарегистрирован

  • Посещение

  • Победитель дней

    3

Весь контент kael

  1. Я не силен в скриптах,у меня наклонность больше к креативности,спрайтам и моделям. Если бы ответили такое да даже к примеру Преподавателю,он бы поставил вам 2 и послал нах(Извиняюсь за грубость). Мне нужен развернутый ответ.
  2. Я делал все 2,компиляция без ошибок проходила,но от карты таро все равно не защищает. Вы думаете я бы создал просто так такую тему?
  3. Ещё такой вот вопрос,прочитал много тем про антикомы,но нечего толкового не нашел так как юзаю старую афину. Подскажите как реализовать?
  4. Каким образом можно сделать,чтобы нпц снимал с тебя весь эквип?
  5. Теперь понял,спасибо.
  6. kael

    cash shop

    100% рабочий.
  7. kael

    Арена by Kael

    Да. Хочу начать работать с автодеском,мне как раз по профессии нужно будет изучать его)
  8. Lable? Объясните пожалуйста понятнее.
  9. Всем привет. Давно интересовал вот такой вопрос: Каким образом убить определенного монстра?(Нужен для бонус Итема)
  10. kael

    Арена by Kael

    Сделал такую простенькую специфическую арену на любителя. Скачать
  11. Купил слот,все прошло успешно.
  12. kael

    А где exe брать?

    1.Не уверен,но скорее луа не той версии и у тебя нету папки System(прилагается с луа файлами) 2.Дисконнектит из за того,что ты не прописал версию своего exe в : а)clientinfo.xml б)packet_db(ea/db/packet_db),тут же можешь узнать версию своего exe и прописать.
  13. У тебя в 2 случаях разные названия спрайта и текстур Смотри внимательнее. BLACK_SCARF и black_gangster_scarf
  14. Это не ответ,решение есть,но возможно оно не подходит для данной системы.
  15. Всем привет. Такой вот вопрос:Каким образом осуществить,чтобы нпц выдавал шмотки 1 раз? Хотя глупый вопрос,так как мне кажется не как. Можно сменить айп,создать новый акк и снова получить пак.
  16. Ему лет 13,увидел какой то хай рейтовый ПвП сервер и тоже захотел А если по теме,то идешь в любой текстовик с мобами и смотришь пример.(npc/mobs/field/yuno.txt) Нечего сложного.
  17. Я не советую запихивать лишние ресурсы в exe. Если вы боитесь что ваш скин или же данные неонкуба кто то возьмет,"просто" зашифруйте их.
  18. kael

    cash shop

    Пробуй это: //|-----------------------------------------------------------------------------|// //|[Release] Points System |// //|-----------------------------------------------------------------------------|// //|Скрипт был создан для FatalRO |// //|-----------------------------------------------------------------------------|// //|Cкрипт написал DeathHoll |// //|-----------------------------------------------------------------------------|// //|Последняя проверка скрипта была на eAthena SQL 13200 stable |// //|-----------------------------------------------------------------------------|// //|Description: Скрипт основан на примере Магазина Кафры |// //|-----------------------------------------------------------------------------|// //|Версия скрипта на данный момент 1.7 |// //|1.0- Первая версия скрипта |// //|1.1- Добавлена конфигурация нпс |// //|1.2- Добавлена система удаления/добавления предметов из поинт шопа |// //|1.3- Добавил ГМ Меню и функцию установки очков персонажу |// //|1.4- Добавил в ГМ Меню функцию удаления всех поинтов с сервера |// //|1.5- Добавил дубликатов и изменил систему установки очков |// //|1.6- Исправил все мелкие баги |// //|1.7- Финальная версия скрипта...но в дальнейшем будет полностью оптимизирован|// //|-----------------------------------------------------------------------------|// - shop F_Cash 139,501:50 //Не изменять тут ничего!!!! //|=====================================================================|// //| Конфигурация скрипта |// //|=====================================================================|// - script cashshop_conf -1,{ end; OnInit: set $@cpoint$, "Cash point"; //Указываем ваш сайт где рассказано о донате и т.п set $@maxpoint, 20000; // Максимальное кол-во очков которое может быть у персонажа set $@gmlvl, 99; // Минимальный уровень ГМ'а для управления поинтами set $@npc$,"^000080[ Cash ]^000000"; // Устанавливаем Имя НПС set $@maxInv,100; // Максимальное кол-во предметов которые может купить персонаж set $@kickall,0; //Кикает всех персонажей после удаления всех поинтов с сервера //|=====================================================================|// //| Конец конфигурации скрипта |// //|=====================================================================|// npcshopdelitem "F_Cash",501; // Не изменять тут ничего!!!! if (getarraysize($cash_item) >= 1) { npcshopitem "F_Cash",$cash_item[0],$cash_price[0]; for (set .@i,1; .@i < getarraysize($cash_item); set .@i,.@i+1) { npcshopadditem "F_Cash",$cash_item[.@i],$cash_price[.@i]; } } end; } //===Прежде чем редактировать координаты посмотрите список дубликатов в конце скрипта===// moc_prydb1,39,121,5 script Cash 853,{ if(getgmlevel() == $@gmlvl) goto L_GM; L_start: mes $@npc$; mes "Добро пожаловать в Point Shop!"; mes "Сейчас у вас:"; mes "[ ^0000FF"+#cashpoint+"^000000 ] ^FF0000"+$@cpoint$+" Очков^000000"; next; switch(select("-Купить предметы в Point Shop:-Информация:-Уйти")) { case 1: close2; callshop "F_Cash",1; dispbottom "У вас "+#cashpoint+" "+$@cpoint$+" Очков."; end; case 2: mes $@npc$; mes "На нашем серве стоит система ^FF0000"+$@cpoint$+" Очков^000000"; close; case 3: close; } L_GM: mes $@npc$; mes "Здраствуйте Администратор ^0000FF"+strcharinfo(0)+"^000000"; mes "Что желаете?"; next; switch(select("-Посмотреть список вещей в магазине:-Управление очками:-Изменить поинт шоп:-Нормальное меню")) { case 1: close2; callshop "F_Cash",1; dispbottom "У вас сейчас "+#cashpoint+" "+$@cpoint$+" Очков."; end; case 2: mes $@npc$; mes "Что желаете?"; next; switch(select("-Дать игроку очки:-Удалить все поинты с игроков")) { case 1: mes $@npc$; mes "Вы хотите игроку дать поинты?"; next; if(select("-Нет:-Да")==2) goto L_adddonate; goto L_canc; L_adddonate: mes $@npc$; mes "Введите имя игрока."; mes "Введите ^FF00000^000000 для отмены"; next; input .@dname$; if(.@dname$ == "0") goto L_canc; if(!isloggedin(getcharid(3,.@dname$)) ) { mes $@npc$; mes "Игрок [ ^0000FF"+.@dname$+"^000000 ] сейчас в оффлайне."; mes "Хотите продолжить?"; next; if(select("-Нет:-Да")==1) close; goto L_donating; } L_donating: mes $@npc$; mes "Сколько ^FF0000"+$@cpoint$+" Очков^000000 вы хотите дать персонажу?"; mes "Введите ^FF00000^000000 для отмены"; next; input .@cpoint; if(.@cpoint == 0) goto L_canc; else if(.@cpoint > $@maxpoint) { mes $@npc$; mes "Максимальное кол-во ^FF0000"+$@cpoint$+"^000000 очков не должно быть больше ^FF0000"+$@maxpoint+"^000000."; close; } mes $@npc$; mes "Имя: ^FF0000"+.@dname$+"^000000"; mes "Кол-во очков которые будут у персонажа: ^FF0000"+.@cpoint+"^000000"; next; if(select("-Отмена:-^FF0000Подтвердить^000000")==2) { if (!isloggedin(getcharid(3,.@dname$)) ) { goto L_confirmdonate2; } goto L_confirmdonate; } close; L_confirmdonate: if(!isloggedin(getcharid(3,.@dname$)) ) { mes $@npc$; mes "Процесс не удался так как ^0000FF"+@donatorname$+"^000000 в оффлайне."; close; } mes $@npc$; mes "^338C60Идет процесс отправки очков..^000000."; mes " Дать [ ^0000FF"+.@cpoint+"^000000 ] ^FF0000"+$@cpoint$+" Очков^000000 игроку"; mes "[ ^0000FF"+.@dname$+"^000000 ]"; close2; if(!isloggedin(getcharid(3,.@dname$)) ) { announce "Oперация не удалась.",bc_self,0x08F8C6; dispbottom "Игрока нет в онлайне."; end; } announce "Операция удалась.",bc_self,0x08F8C6; dispbottom "[ "+.@cpoint+" ] "+$@cpoint$+" Очков получил [ "+.@dname$+" ]"; set @RID, getcharid(3,.@dname$); attachrid(@RID); set #cashpoint,#cashpoint+.@cpoint; dispbottom "Вы получили "+#cashpoint+" "+$@cpoint$+" очков."; detachrid; end; L_confirmdonate2: if (isloggedin(getcharid(3,.@dname$)) ) { announce "Операция удалась.",bc_self,0x08F8C6; dispbottom "[ "+.@cpoint+" ] "+$@cpoint$+" Очков получил [ "+.@dname$+" ]"; set @RID, getcharid(3,.@dname$); attachrid(@RID); set #cashpoint,#cashpoint+.@cpoint; dispbottom "Вы получили "+#cashpoint+" "+$@cpoint$+" Очков."; detachrid; end; } if (getarraysize($dnames$) == 128 ) { deletearray $dnames$[0],1; deletearray $dpoints[0],1; } set $dnames$[getarraysize($dnames$)],.@dname$; set $dpoints[getarraysize($dpoints)],.@cpoint; mes $@npc$; mes "[ ^0000FF"+.@cpoint+"^000000 ] ^FF0000"+$@cpoint$+" Очков^000000 игроку"; mes "[ ^0000FF"+.@dname$+"^000000 ]"; close; case 2: mes $@npc$; mes "Вы уверены что хотите удалить все"; mes ""+$@cpoint$+" Очки с вашего сервера?"; next; if(select("-Нет:-Да")==1) goto L_canc; mes $@npc$; mes "Все "+$@cpoint$+" Очки были удалены с сервера."; set $clearpoints,$clearpoints+1; close2; switch ($@kickall) { default: end; case 1: if($@clearannounce) { announce "Все игроки будут кикнуты из игры через 10 секунд.",bc_all; sleep 1000; atcommand "@kickall"; end; } atcommand "@kickall"; end; case 2: detachrid; for ( set .@i,2000000; .@i <= 2010000; set .@i, .@i + 1 ) { if ( .@i % 250 == 0 ) sleep 20; if ( !attachrid(.@i) ) continue; set #cashpoint,0; set clearpoints,$clearpoints; } if($@clearannounce) announce "Все "+$@cpoint$+" Очки были удалены с сервера Администратором.",bc_all; } end; } case 3: mes $@npc$; mes "Что желаете?"; next; switch(select("Добавить Предметы:Удалить предмет:Удалить все предметы из магазина:Ничего")) { case 1: mes $@npc$; mes "Пожалуйста введите ^0000FFitem id^000000 предмета который хотите добавить.";; mes "Введите ^FF00000^000000 для отмены"; next; input .@item; if(.@item == 0) goto L_canc; mes $@npc$; mes "Предмет: ^FF0000"+getitemname(.@item)+"^000000"; mes "Теперь введите цену за которую можно будет его купить"; mes "Введите ^FF00000^000000 для отмены"; next; input .@price; if(.@price ==0) goto L_canc; mes $@npc$; mes "Предмет: ^FF0000"+getitemname(.@item)+"^000000"; mes "Цена: ^FF0000"+.@price+"^000000"; mes "Все так?"; next; if(select("-Отмена:-Подтвердить")==1) goto L_canc; set $cash_item[getarraysize($cash_item)],.@item; set $cash_price[getarraysize($cash_price)],.@price; npcshopadditem "F_Cash",.@item,.@price; mes $@npc$; mes "^FF0000"+getitemname(.@item)+"^000000 добавлен в поинт шоп."; close; case 2: mes $@npc$; mes "Пожалуйста введите айди предмета который хотите удалить."; mes "Введите ^FF00000^000000 для отмены"; next; input .@remitem; if(.@remitem == 0) goto L_canc; mes $@npc$; mes "Предмет: ^FF0000"+getitemname(.@remitem)+"^000000"; mes "Хотите удалить его из магазина?"; next; if(select("-Нет:-Да")==1) goto L_canc; for (set @i,0; @i < getarraysize($cash_item); set @i,@i+1) { if ($cash_item[@i] == .@remitem) { deletearray $cash_item[@i],1; deletearray $cash_price[@i],1; npcshopdelitem "F_Cash",.@remitem; mes $@npc$; mes "^FF0000"+getitemname(.@remitem)+"^000000 удален из магазина."; close; } else { mes $@npc$; mes "^FF0000"+getitemname(.@remitem)+"^000000 не найден в списке товаров поинт шопа."; close; } } case 3: mes $@npc$; mes "Вы уверены что хотите удалить все предметы из магазина?"; next; if(select("-Нет:-Да")==1) goto L_canc; deletearray $cash_item[0],127; deletearray $cash_price[0],127; npcshopitem "F_Cash",501,1; npcshopdelitem "F_Cash",501; mes $@npc$; mes "Все предметы были удалены из магазина."; close; case 4: goto L_GM; end; L_canc: mes $@npc$; mes "Действие отменено."; close; } case 4: goto L_start; } //==Покупка предмета в магазине==// OnBuyItem: getinventorylist; if(@inventorylist_count >= $@maxInv){ dispbottom "Вы привысили максимальное кол-во покупок."; end; } for (set .@i,0; .@i < getarraysize(@bought_nameid); set .@i,.@i+1) { if (@bought_quantity[@i] <= 0) { end; } set @cost,callfunc("F_CashPrice",@bought_nameid[.@i]); if ((@cost*@bought_quantity[.@i]) > #cashpoint) { dispbottom "У вас не хватает "+$@cpoint$+" Очков."; } else if (!checkweight(@bought_nameid[.@i],@bought_quantity[.@i])) { dispbottom "Процесс покупки недоступен так как у вас перевес в инвентаре."; } else { set #cashpoint,#cashpoint-@cost*@bought_quantity[.@i]; getitem @bought_nameid[.@i],@bought_quantity[.@i]; dispbottom "Cпасибо за покупку!"; dispbottom "Теперь у вас "+#cashpoint+" "+$@cpoint$+" Очков."; } } deletearray @bought_nameid[0],getarraysize(@bought_nameid); deletearray @bought_quantity[0],getarraysize(@bought_quantity); end; //===Ничего тут не изменяем===// OnInit: npcshopattach "F_Cash",1; end; OnPCLoginEvent: if(clearpoints != $clearpoints) { set #cashpoint,0; set clearpoints,$clearpoints; } for ( set .@i,0; .@i < getarraysize($dnames$); set .@i,.@i + 1) { if ( $dnames$[.@i] != strcharinfo(0) ) continue; set #cashpoint,#cashpoint + $dpoints[.@i]; deletearray $dnames$[.@i],1; deletearray $dpoints[.@i],1; dispbottom "У вас "+#cashpoint+" "+$@cpoint$+" очков."; } end; } function script F_CashPrice { for (set .@i,0; .@i < getarraysize($cash_item); set .@i,.@i+1) { if ($cash_item[.@i] == getarg(0)) { return $cash_price[.@i]; } } return; } //Дубликаты //prontera,141,171,4 duplicate(custom_cash) Cash#1 941
  19. Вопрос решен,забыл поменять в packet_db версию exe.
  20. kael

    Harmony

    Всем привет. Поставил защиту гармонию,но вот проблема. При заходе в игру ты нечего не можешь делать( Не шевилиться,команда тоже не работает) Работает только чат и хоткей бар. В мапе пишет это: [Warning]: clif_parse: Received unsupported packet (packet 0x391e, 3 bytes recei ved), disconnecting session #3. Прописал этот пакет в packet_db,после захода он мне выдает уже другой пакет. Прописал уже 15 пакетов результата 0. Подскажите кто знает,в чем может быть проблема?(на exe устанавливал гармонию другой человек)
  21. Спасибо за ответы,учту все варианты.
  22. Как я понял нужно задействовать удаление из инвентаря предмета и команду @raise в этом скрипте. А он на ea робит?
  23. Такой вот вопрос. Каким образом осуществить,что если у тебя в инвентаре лежит Yggdrasil Berry,то после того как тебя убьют ты тут же воскреснешь и Yggdrasil Berry удалиться из инвентаря?
×
×
  • Создать...
Яндекс.Метрика