@unnown: > srry :P > just create an scripted tile or an autmated script > (this gets reseted after logout automaticly btw, thus you need to add it to the logon script) > > Sub SendAuction(ByVal index As Long, ByVal Pageid As Long) > Sub SetPlayerFaction(ByVal index As Long, ByVal Faction As Long) > Function GetPlayerFaction(ByVal index As Long) So I would do it like this? (custom menu) Scripted NPC: ``` Sub ScriptedNPC(Index, Script) Select Case Script Case 0 Call CustomMenuShow(index, "The Red Alliance", "\GUI\CUSTOM\Red.jpg", 1) Call CustomMenuLabel(index, 1, "Will you join the Red Alliance?", 150, 50, 10, 0, 0, 400, 20) Call CustomMenuPicture(index, 1, "\GUI\CUSTOM\yes.jpg", 100, 100) Call CustomMenuPicture(index, 2, "\GUI\CUSTOM\no.jpg", 300, 100) Exit Sub Case 1 Call CustomMenuShow(index, "The Blue Alliance", "\GUI\CUSTOM\Blue.jpg", 1) Call CustomMenuLabel(index, 2, "Will you join the Blue Alliance?", 150, 50, 10, 0, 0, 400, 20) Call CustomMenuPicture(index, 3, "\GUI\CUSTOM\yes.jpg", 100, 100) Call CustomMenuPicture(index, 4, "\GUI\CUSTOM\no.jpg", 300, 100) Exit Sub Case 2 Call CustomMenuShow(index, "The Yellow Alliance", "\GUI\CUSTOM\yellow.jpg", 1) Call CustomMenuLabel(index, 3, "Will you join the Yellow Alliance?", 150, 50, 10, 0, 0, 400, 20) Call CustomMenuPicture(index, 5, "\GUI\CUSTOM\yes.jpg", 100, 100) Call CustomMenuPicture(index, 6, "\GUI\CUSTOM\no.jpg", 300, 100) Exit Sub Case 3 Call CustomMenuShow(index, "The Green Alliance", "\GUI\CUSTOM\green.jpg", 1) Call CustomMenuLabel(index, 4, "Will you join the Green Alliance?", 150, 50, 10, 0, 0, 400, 20) Call CustomMenuPicture(index, 7, "\GUI\CUSTOM\yes.jpg", 100, 100) Call CustomMenuPicture(index, 8, "\GUI\CUSTOM\no.jpg", 300, 100) Exit Sub Case Else Call PlayerMsg(Index, "No NPC script found. Please contact an admin to solve this problem.", WHITE) Exit Sub End Select End Sub ``` Menuscripts: ``` Sub MenuScripts(Index, Clicked_Index, Menu_Type) Dim MenuTitle Dim FieldMessage MenuTitle = getplayermenuclicktitle(Index) FieldMessage = getplayermenuclickmsg(Index) Select Case Menu_Type Case 1 If Clicked_Index = 1 Then Call SetPlayerFaction(Index, Faction1) Call PutVar("/scripts/charextras" & GetPlayerName(Index) & ".ini", "Faction", "Faction 1") If Clicked_Index = 2 Call PlayerWarp(Index, 63, 15, 15) Call PlayerMsg(Index, "You were knocked unconcious and taken back to camp", BRIGHTRED) If Clicked_Index = 3 Call SetPlayerFaction(Index, Faction2) Call PutVar("/scripts/charextras" & GetPlayerName(Index) & ".ini", "Faction", "Faction 2") If Clicked_Index = 4 Call PlayerWarp(Index, 63, 15, 15) Call PlayerMsg(Index, "You were knocked unconcious and taken back to camp", BRIGHTRED) If Clicked_Index = 5 Call SetPlayerFaction(Index, Faction3) Call PutVar("/scripts/charextras" & GetPlayerName(Index) & ".ini", "Faction", "Faction 3") If Clicked_Index = 6 Call PlayerWarp(Index, 63, 15, 15) Call PlayerMsg(Index, "You were knocked unconcious and taken back to camp", BRIGHTRED) If Clicked_Index = 7 Call SetPlayerFaction(Index, Faction4) Call PutVar("/scripts/charextras" & GetPlayerName(Index) & ".ini", "Faction", "Faction 4") If Clicked_Index = 8 Call PlayerWarp(Index, 63, 15, 15) Call PlayerMsg(Index, "You were knocked unconcious and taken back to camp", BRIGHTRED) Case 2 Call PlayerMsg(Index, "Clicked field number " & Clicked_Index & " on the menu named " & MenuTitle & ". The field text was " & FieldMessage, YELLOW) Case 3 Call PlayerMsg(Index, "Clicked label number " & Clicked_Index & " on the menu named " & MenuTitle, YELLOW) End Select End Sub ``` JoinGame: ``` Sub JoinGame(Index) Dim Faction Faction = GetVar("/script/charextras" & GetPlayerName(Index) & ".ini", "Faction" Call SetPlayerFaction(index, Faction) If GetPlayerAccess(Index) = 0 Then Call GlobalMsg(GetPlayerName(Index) & " has joined " & GameName & "!", GREY) Call GlobalMsg(GetPlayerName(Index) & " is a level " & GetPlayerLevel(index) & " " & GetPlayerClassName(Index) & ".", GREY) Else Call GlobalMsg("Administrator " & GetPlayerName(Index) & " has joined " & GameName & "!", YELLOW) Call GlobalMsg(GetPlayerName(Index) & " is a level " & GetPlayerLevel(index) & " " & GetPlayerClassName(Index) & ".", YELLOW) End If Call PlayerMsg(Index, "Welcome to " & GameName & "!", WHITE) If LenB(MOTD) 0 Then Call PlayerMsg(Index, "MOTD: " & MOTD, BRIGHTCYAN) End If Call SendWhosOnline(Index) If GetVar("var.ini", GetPlayerName(index), "startup") = "" Then weapon = Int(GetVar("classes\class" & GetPlayerClass(index) & ".ini", "StartUp", "Weapon")) armor = Int(GetVar("classes\class" & GetPlayerClass(index) & ".ini", "StartUp", "Armor")) shield = Int(GetVar("classes\class" & GetPlayerClass(index) & ".ini", "StartUp", "Shield")) helmet = Int(GetVar("classes\class" & GetPlayerClass(index) & ".ini", "StartUp", "Helmet")) wepdur = Int(GetVar("classes\class" & GetPlayerClass(index) & ".ini", "StartUp", "Wepdur")) armdur = Int(GetVar("classes\class" & GetPlayerClass(index) & ".ini", "StartUp", "Armdur")) shldur = Int(GetVar("classes\class" & GetPlayerClass(index) & ".ini", "StartUp", "Shldur")) hlmdur = Int(GetVar("classes\class" & GetPlayerClass(index) & ".ini", "StartUp", "Hlmdur")) If weapon 0 Then Call Give_Item(index, weapon, wepdur) End If If armor 0 Then Call Give_Item(index, armor, armdur) End If If shield 0 Then Call Give_Item(index, shield, shldur) End If If helmet 0 Then Call Give_Item(index, helmet, hlmdur) End If Call PutVar("var.ini", GetPlayerName(index), "startup", "yes") End If End Sub ``` I assume this is correct. Just asking to be completly sure :P