zik13 не путай всех плз, neksens есть еще одна загвоздка если у тебя есть еще какие нибудь локальные сети то конект к серверу может идти через них, такое же может быть (например у меня) что при включёном инете конект к серверу идёт через внешний ип адрес. Гляди когда запускаешь сервер ип
Добавлено (10.11.2010, 21:21) --------------------------------------------- zik13 не путай всех плз, neksens есть еще одна загвоздка если у тебя есть еще какие нибудь локальные сети то конект к серверу может идти через них, такое же может быть (например у меня) что при включёном инете конект к серверу идёт через внешний ип адрес. Гляди когда запускаешь сервер ип
Добавлено (10.11.2010, 21:26) --------------------------------------------- для тебя есь такой способ попробуй: отруби все локалки (опять же если есь) КРОМЕ ХОМЯКА отруби инет врубай сервер, а после включай локалки и инет
Попробуй ещё раз все толково переделать. При приходе подарка получающий должен нажать на имя отправителя в поздравительном окне и подарок сразу ложится в инвентарь. Проверь сделана ли у тебя папка Charextras в папке Scirpts
Code
как только включаешь вылазит
Это происходит если получатель находился был не в игре. а потом когда вошёл он получает подарок тут все верно. Но если ты не отправлял подарок то значит ты где то повредил код. Ещё вопрос ошибок нет на самом сервере когда отсылал или получаешь подарок? Выпрямляю путем кнута и пряника
Приветствую всех кому хочется установить такую систему себе в игру Маленький хоть и нужный залог успеха игры это Эвенты которые проводят Гм они могут быть различные от: Сделайте поручения ГМ до Найдите спрятанного ГМ.
Ну так вижу вы заинтересовались
Ну что же пожалуй начнём:
Вставьте этот код в Sub JoinGame до End Sub
Code
Dim ItemID Dim AmountID Dim UserID
If GetVar("Scripts\Charextras\" & GetPlayerName(Index) & ".ini", "GIFT", "ItemID") = "" Then Call PutVar("Scripts\Charextras\" & GetPlayerName(Index) & ".ini", "GIFT", "ItemID","0") End If
If ItemID <> "0" Then Call CustomMenuShow(index, "Gift System by xLukzx", "\GFX\CUSTOM\gift.gif", 1) Call CustomMenuLabel(index, 0, UserID, 136, 80, 15, 5, 2, 100, 23) Call GiveCurrency(Index, CInt(ItemID), CInt(AmountID)) Call Putvar("Scripts\Charextras\" & GetPlayerName(Index) & ".ini", "GIFT", "ItemID", "0") Call Putvar("Scripts\Charextras\" & GetPlayerName(Index) & ".ini", "GIFT", "AmountID", "0") Call Putvar("Scripts\Charextras\" & GetPlayerName(Index) & ".ini", "GIFT", "UserID", "") End If
Создайте папку Charextras в Scripts
Добавьте этот код в конец Sub Commands (опять же перед End Sub):
Code
Case "/gift" Dim ItemID Dim AmountID Dim UserID
If GetPlayerAccess(Index) > 4 Then PlayerName = TextSay(1) PlayerID = FindPlayer(TextSay(1)) ItemID = TextSay(2) AmountID = TextSay(3) UserID = GetPlayerName(Index)
If PlayerID > 0 Then Call CustomMenuShow(PlayerID, "Gift System by xLukzx", "\GFX\CUSTOM\gift.gif", 1) Call CustomMenuLabel(PlayerID, 0, UserID, 136, 80, 15, 5, 2, 100, 23) Call GiveCurrency(PlayerID, CInt(ItemID), CInt(AmountID)) Call PutVar("Scripts\Charextras\" & PlayerName & ".ini", "GIFT", "ItemID", "0") Else Call Putvar("Scripts\Charextras\" & PlayerName & ".ini", "GIFT", "ItemID", (ItemID)) Call Putvar("Scripts\Charextras\" & PlayerName & ".ini", "GIFT", "AmountID", (AmountID)) Call Putvar("Scripts\Charextras\" & PlayerName & ".ini", "GIFT", "UserID", (UserID)) Call PlayerMsg(Index, "Player will recieve your gift next time he log on", WHITE) End If
Else Call PlayerMsg(Index, "Only Admins can do that!", BRIGHTRED) End If
Я прикрепил изображение нужное чтобы отображалось сообщение о наличии подарка (Иначе выдавало бы ошибку, в принципе изображение можно сделать самому) Изображение надо кинуть в GFX\CUSTOM\ Переименуйте в gift.gif
Как использовать?
Напоминаю команду могут использовать только ГМ для простых пользователей она не доступна
/gift Имя-перса Ид-вещи кол-во
Ну вот пожалуй и все пробуем, пользуемся, оставляем комментарии ставим ++
ВНИМАНИЕ!!! НЕЛЬЗЯ ОТПРАВЛЯТЬ ПОДАРКИ САМОМУ СЕБЕ!
Я просто думал что не из-за буквы Н а именно из-за какого то соединения с базой. Сейчас тогда буду писать урок про Эвент подарки надеюсь кому нибудь пригодиться))) Ps кто же за ++ не поможет ))))) Выпрямляю путем кнута и пряника
Люди извиняюсь за свою не внимательность. Если читать гайды на офф форуме то ясно написано все характеристики NPC должны стоять хотябы на 1 Но спс за то что рекомендовали)) Fulier
Code
End Select End Sub
Это всё естественно проставлено))) Ещё раз извиняюсь за балагам всем спасибо. Выпрямляю путем кнута и пряника
Добавлено (23.10.2010, 21:13) --------------------------------------------- вот кодики файлов: scriptedNPC.ess:
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ' Module: ScriptedNPC.ess ' ' Author: Stephan J.R. van Schaik <stephan_van_schaik@msn.com> ' ' Date: August 30th, 2009. ' ' Version: 1.0.0 ' '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
''''''''''''''''''''''''''''''''''''''''''''''''''''''''' '''''''' ' Function: ScriptedNPC ' ' Brief: executes when somebody talks to a NPC. ' ' Parameters: ' ' Index: the index of the player. ' ' Script: the script to execute. ' ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Sub ScriptedNPC(Index, Script) Select Case Script Case 1 if GetPlayerLevel(Index) >= 1 then ' Если уровень персонажа больше или равен еденице, то. If GetVar("Scripts\Quests\" & GetPlayerName(Index) & ".ini", "General", "Quest1") = vbNullString Then Call PlayerMsg(Index, "I lost shild help me faind him.", YELLOW) ' Call - обязательная вещь для вызова того или иного скрипта. Yellow - цвет текста в чате (желтый) Call PutVar("Scripts\Quests\" & GetPlayerName(Index) & ".ini", "General", "Quest1", 1) 'Создаём в папке Quests файл игрока, в котором отмечаются стадии квеста. Сейчас эта стадия - 1. General - то, что написано в квадратных скобках (программное имя квеста). Quest1 - программная отметка квеста. 1 - стадия квеста.' end if
Else if GetVar("Scripts\Quests\" & GetPlayerName(Index) & ".ini", "General", "Quest1") = 1 Then If CanTake(Index, 2, 1) then' Внимание: цифры могут отличаться от ваших, смотрите: 2 - это номер предмета. 8 - это количество предметов. CanTake - есть ли у вас этот предмет в данном количестве. Call PlayerMsg(Index, "Oh, were he is", YELLOW) Call TakeItem(Index, 2, 1) ' Забирает вещи. Скрипт похож на CanTake. 2 - номер предмета. 8 - количество предметов, которые нужно забрать. Call GiveCurrency(Index, 4, 100) ' Выдаёт деньги или тот предмет, что помечен под Currency. 1 - номер предмета, 100 - количество. Call PutVar("Scripts\Quests\" & GetPlayerName(Index) & ".ini", "General", "Quest1", 2) end if end if End if End Select End Sub
Добавлено (23.10.2010, 21:14) --------------------------------------------- Раньше все норм как по часам теперь даже гильд мастер не робит
Доброе время суток! В основном с переводом: Ников(хочу чтоб на русском тоже можно было), Новостей при включение новостей !!По поводу новостей меня больше интересует почему английскими нормально всё пишется т.е пиши скок хочешь, а на русском 10- 20 слов??? !! И по поводу классов: что надо перекодировать чтобы названия классов писалось буквами а не выдавало ошибку при создании нового перса. Всем спасибо с меня за хороший и правильный ответ +
Добавлено (23.10.2010, 20:56) --------------------------------------------- хммм видать на мои темы не кто не отвечает))) или это всё из-а моего замечания, прямо я ацкий уголовник
Выпрямляю путем кнута и пряника
Сообщение отредактировал infermik - Среда, 20 Октября 2010, 21:44
Добавлено (22.10.2010, 20:29) --------------------------------------------- ХД теперь воспринимать вообще перестал Case 4 If GetPlayerLevel(Index) >= 1 then ' Если уровень персонажа больше или равен еденице, то. If GetVar("Scripts\Quests\" & GetPlayerName(Index) & ".ini", "General", "Quest1") = vbNullString Then Call PlayerMsg(Index, "I lost shild help me faind him.", YELLOW) ' Call - обязательная вещь для вызова того или иного скрипта. Yellow - цвет текста в чате (желтый) Call PutVar("Scripts\Quests\" & GetPlayerName(Index) & ".ini", "General", "Quest1", 1) 'Создаём в папке Quests файл игрока, в котором отмечаются стадии квеста. Сейчас эта стадия - 1. General - то, что написано в квадратных скобках (программное имя квеста). Quest1 - программная отметка квеста. 1 - стадия квеста.'
Else if GetVar("Scripts\Quests\" & GetPlayerName(Index) & ".ini", "General", "Quest1") = 1 Then If CanTake(Index, 2, 1) then' Внимание: цифры могут отличаться от ваших, смотрите: 2 - это номер предмета. 8 - это количество предметов. CanTake - есть ли у вас этот предмет в данном количестве. Call PlayerMsg(Index, "Oh, were he is", YELLOW) Call TakeItem(Index, 2, 1) ' Забирает вещи. Скрипт похож на CanTake. 2 - номер предмета. 8 - количество предметов, которые нужно забрать. Call GiveCurrency(Index, 4, 100) ' Выдаёт деньги или тот предмет, что помечен под Currency. 1 - номер предмета, 100 - количество. Call PutVar("Scripts\Quests\" & GetPlayerName(Index) & ".ini", "General", "Quest1", 2) end if end if End if End if Exit Sub
Flameberge извини но меня вынудили, так вот тебе студия a112 Осада онлайн СТРАТЕГИЯ сделанная на РК. Я вот лично как знаком с реалмом я могу подтвердить что он на этом двиге!
Quote (a112)
Это конструктор, причём очень сильно ограниченный
И тебе говорит что нибудь названия скриптинг??
Добавлено (22.10.2010, 19:04) --------------------------------------------- И кстати a112 если ты не заметил нам конструктор нужен, а не двиг хотя это 2 в 1
Можно методом тыка что нибудь в сети много чего моно найти вот поищи по басику уроки на крайний случай оставь вопрос на mail.ru может дадут ответ Выпрямляю путем кнута и пряника
Теперь понял в чём твоя ошибка короче, качаешь VB6 (Visual basics 6 Portable - он весит 38 мб) открываешь Нажимаешь Ctral + o (ну или открыть) идёшь в папку Eclpse>client выбираем Eclipse.vbp
далее там должно вроде много окон в VB вылететь закрываешь их открой frmNewChar (frmNewChar.frm) на скрине показано напротив курсора
Затем мышкой переставляешь все поля под свой набросок Затем удаляешь файл client.exe в папке Clisen переходи опять к VB нажимаем File-make Client.exe... Выбираем папку Client и затем ок возможно вылетит ошибка но файл сделается просто не обращай на неё внимание. А если файл не сделался стукни сюда ещё раз Поставь + если помог Выпрямляю путем кнута и пряника
Сообщение отредактировал infermik - Пятница, 22 Октября 2010, 08:00