Fizik Опубликовано 11 мая, 2015 Жалоба Поделиться Опубликовано 11 мая, 2015 (изменено) Помогите пожалуйста понять как реализовать следующее...Нужен Скрипт который будет каждый понедельник в 00:00 выдавать кое какие вещи (которые я впишу) Но что бы выдавал только тем кто достиг 60+ джоб уровня Если есть подобие чего то поделитесь пожалуйста) а то понятия не имею как настроить именно так что бы раз в неделю и Всем достигшим 60 проф уровня (даже тех кто не в сети) (Готов даже немного заплатить) Изменено 11 мая, 2015 пользователем Fizik Ссылка на комментарий Поделиться на другие сайты Поделиться
Кеник Опубликовано 11 мая, 2015 Жалоба Поделиться Опубликовано 11 мая, 2015 Читай документацию.. OnClock, gettime, JobLevel тебе в помощь (: Ссылка на комментарий Поделиться на другие сайты Поделиться
Kubix! Опубликовано 11 мая, 2015 Жалоба Поделиться Опубликовано 11 мая, 2015 (изменено) OnClock2359:if (gettime(4)==1) {addrid(0); //аттач всех персонажей к скрипту, если у тебя rAif(joblevel >= 60){getitem 1231,1;detachrid;}}end;Чтоб выдавать вообще всем, даже тем кто не в сети, то разве что через sql наверн. Изменено 11 мая, 2015 пользователем Kubix 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Fizik Опубликовано 11 мая, 2015 Автор Жалоба Поделиться Опубликовано 11 мая, 2015 OnClock2359:if (gettime(4)==1) {addrid(0); //аттач всех персонажей к скрипту, если у тебя rAif(joblevel >= 60){getitem 1231,1;detachrid;}}end;Чтоб выдавать вообще всем, даже тем кто не в сети, то разве что через sql наверн.А тут 1 раз в неделю дают тем кто в сети да? А как создать нужные поля для базы данных )) мне надо именно всем выдавать ))) Иначе от етого не будет смысла) Ссылка на комментарий Поделиться на другие сайты Поделиться
Kubix! Опубликовано 11 мая, 2015 Жалоба Поделиться Опубликовано 11 мая, 2015 (изменено) Поля создавать ненужно. Нужно наверно занести всем аккаунтам по итему в инвентарь, ток хз как это адекватно сделать ибо у некоторых может места не быть либо веса не хватать.insert into `inventory` (`nameid`,`amount`) values ('7227','1');Вряд ли прокнет, фз. Ну старт я тебе дал, дальше думай) Изменено 11 мая, 2015 пользователем Kubix 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Fizik Опубликовано 11 мая, 2015 Автор Жалоба Поделиться Опубликовано 11 мая, 2015 Поля создавать ненужно. Нужно наверно занести всем аккаунтам по итему в инвентарь, ток хз как это адекватно сделать ибо у некоторых может места не быть либо веса не хватать.insert into `inventory` (`item_id`,`amount`) values ('7227','1');Вряд ли прокнет, фз. Ну старт я тебе дал, дальше думай)Если бы понимал в sql скрипте))) Вот это вот я вроде понял что значит) Вопрос если это впихнуть вместо getitem 1231,1 то разве он не будет выдавать их каждый понедельник каждому?) А по поводу места это врятли) А вес того что я задумал будет "0" полюбому) Ссылка на комментарий Поделиться на другие сайты Поделиться
Kubix! Опубликовано 11 мая, 2015 Жалоба Поделиться Опубликовано 11 мая, 2015 Поля создавать ненужно. Нужно наверно занести всем аккаунтам по итему в инвентарь, ток хз как это адекватно сделать ибо у некоторых может места не быть либо веса не хватать.insert into `inventory` (`item_id`,`amount`) values ('7227','1');Вряд ли прокнет, фз. Ну старт я тебе дал, дальше думай)Если бы понимал в sql скрипте))) Вот это вот я вроде понял что значит) Вопрос если это впихнуть вместо getitem 1231,1 то разве он не будет выдавать их каждый понедельник каждому?) А по поводу места это врятли) А вес того что я задумал будет "0" полюбому)Без sql он будет выдавать тем кто в игре. Ссылка на комментарий Поделиться на другие сайты Поделиться
Fizik Опубликовано 11 мая, 2015 Автор Жалоба Поделиться Опубликовано 11 мая, 2015 Поля создавать ненужно. Нужно наверно занести всем аккаунтам по итему в инвентарь, ток хз как это адекватно сделать ибо у некоторых может места не быть либо веса не хватать.insert into `inventory` (`item_id`,`amount`) values ('7227','1');Вряд ли прокнет, фз. Ну старт я тебе дал, дальше думай)Если бы понимал в sql скрипте))) Вот это вот я вроде понял что значит) Вопрос если это впихнуть вместо getitem 1231,1 то разве он не будет выдавать их каждый понедельник каждому?) А по поводу места это врятли) А вес того что я задумал будет "0" полюбому)Без sql он будет выдавать тем кто в игре.тоесть если вместо getitem 1231,1;Прописатьinsert into `inventory` (`item_id`,`amount`) values ('7227','1');Он всё равно будет выдавать ток тем кто в игре?) А что же тагда делать?) Как реализовывать? Таблица Inventory как бы в базе данных есть если и в скрипт это вбить разве не будет тагда всем выдавать а не только онлайнам))Если же так не получается то как можно скрипт перебить чтобы он выдавал скрижаль тому кто тыкнет но только 1 раз в неделю?) Ссылка на комментарий Поделиться на другие сайты Поделиться
Kubix! Опубликовано 11 мая, 2015 Жалоба Поделиться Опубликовано 11 мая, 2015 Если просто это вписать то оно вроде не будет знать куда вписывать эти значения. Нужно добавить чет например where `charid` > 0 хотя фз, я сам не очень дружу с sql Ссылка на комментарий Поделиться на другие сайты Поделиться
Кеник Опубликовано 12 мая, 2015 Жалоба Поделиться Опубликовано 12 мая, 2015 Если выдавать через запрос, то тогда не выдаст тем, кто во время этого события в игре находится, если мне память не изменяет.Если же так не получается то как можно скрипт перебить чтобы он выдавал скрижаль тому кто тыкнет но только 1 раз в неделю?)Это проще будет. Делаешь переменную (last_prize или еще как-нибудь). В момент выдачи записываешь туда gettimetick и потом сравниваешь при тыке на скрижаль. Если неделя не прошла - ничего не делать, если прошла - выдать приз и снова записать туда новое значение. Ссылка на комментарий Поделиться на другие сайты Поделиться
Kubix! Опубликовано 12 мая, 2015 Жалоба Поделиться Опубликовано 12 мая, 2015 Если выдавать через запрос, то тогда не выдаст тем, кто во время этого события в игре находится, если мне память не изменяет.Если же так не получается то как можно скрипт перебить чтобы он выдавал скрижаль тому кто тыкнет но только 1 раз в неделю?)Это проще будет. Делаешь переменную (last_prize или еще как-нибудь). В момент выдачи записываешь туда gettimetick и потом сравниваешь при тыке на скрижаль. Если неделя не прошла - ничего не делать, если прошла - выдать приз и снова записать туда новое значение.Выдать - выдаст, но нужно будет перезайти чтоб увидеть) Ну с кд норм идея, да Ссылка на комментарий Поделиться на другие сайты Поделиться
Fizik Опубликовано 12 мая, 2015 Автор Жалоба Поделиться Опубликовано 12 мая, 2015 А Можно в пример взять скрипт выдача приза за голоса?) Ссылка на комментарий Поделиться на другие сайты Поделиться
Kubix! Опубликовано 12 мая, 2015 Жалоба Поделиться Опубликовано 12 мая, 2015 А Можно в пример взять скрипт выдача приза за голоса?)Насколько я помню он только вытаскивает кол-во голосов с бд ) Ссылка на комментарий Поделиться на другие сайты Поделиться
Fizik Опубликовано 13 мая, 2015 Автор Жалоба Поделиться Опубликовано 13 мая, 2015 А как можно поставить нпц ))) Я могу сделать так что бы он выдавал предмет) а как сделать что бы он выдавал Его именно одному чару и именно 1 раз в неделю?) Ссылка на комментарий Поделиться на другие сайты Поделиться
Кеник Опубликовано 13 мая, 2015 Жалоба Поделиться Опубликовано 13 мая, 2015 А как можно поставить нпц ))) Я могу сделать так что бы он выдавал предмет) а как сделать что бы он выдавал Его именно одному чару и именно 1 раз в неделю?)Если выдавать через запрос, то тогда не выдаст тем, кто во время этого события в игре находится, если мне память не изменяет.Если же так не получается то как можно скрипт перебить чтобы он выдавал скрижаль тому кто тыкнет но только 1 раз в неделю?)Это проще будет. Делаешь переменную (last_prize или еще как-нибудь). В момент выдачи записываешь туда gettimetick и потом сравниваешь при тыке на скрижаль. Если неделя не прошла - ничего не делать, если прошла - выдать приз и снова записать туда новое значение.Открываешь файлик script_commands.txt и вперёд! Ссылка на комментарий Поделиться на другие сайты Поделиться
Kubix! Опубликовано 13 мая, 2015 Жалоба Поделиться Опубликовано 13 мая, 2015 <npcheader>if(WeeklyCD > gettimetick(2)) {set @cd, WeeklyCD - gettimetick(2);mes "приходи через "+@cd / 60 +" минут."; close;}getitem 7227,1;set WeeklyCD, gettimetick(2) + 604800;<npcfooter> 1 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Fizik Опубликовано 14 мая, 2015 Автор Жалоба Поделиться Опубликовано 14 мая, 2015 <npcheader>if(WeeklyCD > gettimetick(2)) {set @cd, WeeklyCD - gettimetick(2);mes "приходи через "+@cd / 60 +" минут.";close;}getitem 7227,1;set WeeklyCD, gettimetick(2) + 604800;<npcfooter>ето внутрь нпц да?) а тут 7 дней?) Спасибо что помогаешь))) Ссылка на комментарий Поделиться на другие сайты Поделиться
Кеник Опубликовано 14 мая, 2015 Жалоба Поделиться Опубликовано 14 мая, 2015 Это не помощь, это он уже за тебя все делает. Ссылка на комментарий Поделиться на другие сайты Поделиться
Fizik Опубликовано 14 мая, 2015 Автор Жалоба Поделиться Опубликовано 14 мая, 2015 Это не помощь, это он уже за тебя все делает.Да, согласен Это он сделал уже за меня, Но я учусь) И в следующий раз когда такое спросят уже смогу помочь я) Ссылка на комментарий Поделиться на другие сайты Поделиться
Kubix! Опубликовано 14 мая, 2015 Жалоба Поделиться Опубликовано 14 мая, 2015 да 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Fizik Опубликовано 14 мая, 2015 Автор Жалоба Поделиться Опубликовано 14 мая, 2015 даСпасибо большущее Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения