Не знаю может кому пригодится и кому лень искать нашёл на офф сайте P.S У меня он не пошёл так что не задаём вопросы и не говорим про кривые руки!
Скрипт NPC который создаёт гильдии:
Написал: Ilnair
Скрипт для создания гильдии и как он работает.
Когда персонаж достигает 50 уровня он может сделать гильдию (Соответственно уровень можно поменять)
Можно подойти к специально созданному NPC и сделать гильдию. В поле надо ввести названия вашей гильдии.
После чего вас выкинет из игры через, 15 сек ваша гильдия будет занесена в базу.
Установка скрипта:
Шаг 1:Сделаем NPC дадим ему имя Guild Master. Указываем его действие Script 4
Шаг 2: Затем идём в папку Script открываем файл main.txt и находим "Sub ScriptedNPC(index, Script)" ( Без ковычек!) и вставляем код выше End Select
УДАЛИВ мои комментарии
Код:
Case 4
If GetPlayerLevel(index) > 49 Then <-- тут находится уровень сейчас у нас на данный момент стоит больше 49 т.е проверяет что уровень у перса 50, 51 и т.д допустим чтобы мы смогли создать гильдию с 20 уровня необходимо указать вместо 49 19
Call playerquerybox(index, "How do you want to name your guild?", 0)
Exit Sub
End If
Call PlayerMsg(index, "Guild Admin: You have to be level 50 to create a guild!", 2) <-- тут тоже подправьте если будите указывать свой уровень
Exit Sub
Если вы не нашли "Sub ScriptedNPC(index, Script)", то просто вставьте этот код в конец main.txt:
Код:
Sub ScriptedNPC(index, Script)
Select Case Script
Case 4
If GetPlayerLevel(index) > 49 Then
Call playerquerybox(index, "How do you want to name your guild?", 0)
Exit Sub
End If
Call PlayerMsg(index, "Guild Admin: You have to be level 50 to create a guild!", 2)
Exit Sub
End Select
End Sub
Шаг 3: Найдите "Sub Querybox(index, script)", и вставьте код выше end select
Код:
Case 0
If response = "<GM>" then
If GetPlayerAccess(index) = 0 Then
Call PlayerMsg(index, "You cannot create this guild!", 12)
Exit Sub
End If
End If
Call PutVar("tempvars.ini", "GuildCreate", "Login", GetPlayerLogin(index))
Call PutVar("tempvars.ini", "GuildCreate", "CharNum", GetPlayerCharNum(index))
Call PutVar("tempvars.ini", "GuildCreate", "GuildName", response & "")
Call SetTimer("tmrTest " & 0 & ",5", 5000)
Call GlobalMsg(GetPlayerName(index) & " has created the guild: " & response & "!", 10)
Call AlertMsg(index, "Your Guild: " & response & " will be created, please relog into the game AFTER 15 seconds!")
Exit Sub
Если вы не нашли "Sub Querybox(index, script)" то вставьте этот код в конец main.txt
Код:
Sub Querybox(index, script)
On Error Resume next
Dim response
response=getvar("\responses.ini","Responses",Int(index))
Select Case script
Case 0
If response = "<GM>" then
If GetPlayerAccess(index) = 0 Then
Call PlayerMsg(index, "You cannot create this guild!", 12)
Exit Sub
End If
End If
Call PutVar("tempvars.ini", "GuildCreate", "Login", GetPlayerLogin(index))
Call PutVar("tempvars.ini", "GuildCreate", "CharNum", GetPlayerCharNum(index))
Call PutVar("tempvars.ini", "GuildCreate", "GuildName", response & "")
Call SetTimer("tmrTest " & 0 & ",5", 5000)
Call GlobalMsg(GetPlayerName(index) & " has created the guild: " & response & "!", 10)
Call AlertMsg(index, "Your Guild: " & response & " will be created, please relog into the game AFTER 15 seconds!")
Exit Sub
End Select
End Sub
Шаг 4: Найдите "tmrTest(index, script)", и вставьте код выше end select
Код:
Case 5
Call RemoveTimer("tmrtest " & index & "," & 5)
login = GetVar("tempvars.ini", "GuildCreate", "Login")
charnum = GetVar("tempvars.ini", "GuildCreate", "CharNum")
GuildName = GetVar("tempvars.ini", "GuildCreate", "GuildName")
If CharNum > 1 Then
Call PutVar("Banks\" & login & ".ini", "Char" & charnum, "Guild", GuildName & "")
Call PutVar("Banks\" & login & ".ini", "Char" & charnum, "Guildaccess", "4")
Else
Call PutVar("accounts\" & login & ".ini", "Char" & charnum, "Guild", GuildName & "")
Call PutVar("accounts\" & login & ".ini", "Char" & charnum, "Guildaccess", "4")
End If
Exit Sub
Если вы не нашли tmrTest(index, script), то вставьте этот код в конец main.txt:
Код:
'********************************
Sub tmrTest(index, script)
'********************************
Dim guildname
Dim charnum
Dim login
On Error Resume Next
Select case script
Case 5
Call RemoveTimer("tmrtest " & index & "," & 5)
login = GetVar("tempvars.ini", "GuildCreate", "Login")
charnum = GetVar("tempvars.ini", "GuildCreate", "CharNum")
GuildName = GetVar("tempvars.ini", "GuildCreate", "GuildName")
If CharNum > 1 Then
Call PutVar("Banks\" & login & ".ini", "Char" & charnum, "Guild", GuildName & "")
Call PutVar("Banks\" & login & ".ini", "Char" & charnum, "Guildaccess", "4")
Else
Call PutVar("accounts\" & login & ".ini", "Char" & charnum, "Guild", GuildName & "")
Call PutVar("accounts\" & login & ".ini", "Char" & charnum, "Guildaccess", "4")
End If
Exit Sub
End Select
End Sub
Вот и всё а теперь подойдите к Guild Master Нажмите на ctrl и у вас появится окно (У меня такого не было NPC не реагировал у кого получилось говрим)
Если помог нажмите +