|
avatar.alex
|
 |
« Reply #5 on: June 28, 2007, 11:25:48 PM » |
|
What am I missing I have done everything I can I did everything perfect. I added everything in the right place heres my main file
':: Access :: 'ADMIN_MONITER = 1 'ADMIN_MAPPER = 2 'ADMIN_DEVELOPER = 3 'ADMIN_CREATOR = 4
':: Text Color Code :: 'Black = 0 'Blue = 1 'Green = 2 'Cyan = 3 'Red = 4 'Magenta = 5 'Brown = 6 'Grey = 7 'DarkGrey = 8 'BrightBlue = 9 'BrightGreen = 10 'BrightCyan = 11 'BrightRed = 12 'Pink = 13 'Yellow = 14 'White = 15
Sub JoinGame(index) Dim GameName Dim MOTD
GameName = Trim(GetVar("Data.ini", "CONFIG", "GameName")) MOTD = GetVar("motd.ini", "MOTD", "Msg")
' Send a global message that he/she joined If GetPlayerAccess(index) <= ADMIN_MONITER Then Call GlobalMsg(GetPlayerName(index) & " has joined " & GameName & "!", 7) Else Call GlobalMsg(GetPlayerName(index) & " has joined " & GameName & "!", 15) End If
' Send them welcome Call PlayerMsg(index, "Welcome to " & GameName & "!", 15) ' Send motd If Trim(MOTD) <> "" Then Call PlayerMsg(index, "MOTD: " & MOTD, 11) End If
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
Sub LeftGame(index) Dim GameName Dim n
GameName = Trim(GetVar("Data.ini", "CONFIG", "GameName"))
' Check for boot map If GetBootMap(index) > 0 Then Call SetPlayerX(index, Map(GetPlayerMap(index)).BootX) Call SetPlayerY(index, Map(GetPlayerMap(index)).BootY) Call SetPlayerMap(index, Map(GetPlayerMap(index)).BootMap) End If ' Send a global message that he/she left If GetPlayerAccess(index) <= 1 Then Call GlobalMsg(GetPlayerName(index) & " has left " & GameName & "!", 7) Else Call GlobalMsg(GetPlayerName(index) & " has left " & GameName & "!", 15) End If
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
Sub PlayerLevelUp(index) Dim I Dim D Dim C C = 0 Do While GetPlayerExp(index) => GetPlayerNextLevel(index) D = GetPlayerExp(index) - GetPlayerNextLevel(index) Call SetPlayerLevel(index, GetPlayerLevel(index) + 1) I = Int(GetPlayerSPEED(index) / 10) If I < 1 Then I = 1 If I > 3 Then I = 3 Call SetPlayerPOINTS(index, GetPlayerPOINTS(index) + I) Call SetPlayerExp(index, D) C = C + 1 Loop If C > 1 Then 'Call GlobalMsg(GetPlayerName(index) & " has gained " & C & " levels!", 6) Else 'Call GlobalMsg(GetPlayerName(index) & " has gained a level!", 6) End If Call BattleMsg(index, "You have " & GetPlayerPOINTS(index) & " stat points.", 9, 0) End Sub
Sub UsingStatPoints(index, PointType) Select Case PointType Case 0 'Gives you a set max If GetPlayerSTR(index) + 1 > 1000 Then Call BattleMsg(index, "You have maxed your strength!", 12, 0) Exit Sub End If Call SetPlayerSTR(index, GetPlayerSTR(index) + 1) Call BattleMsg(index, "You have gained more strength!", 15, 0) Case 1 'Gives you a set max If GetPlayerDEF(index) + 1 > 1000 Then Call BattleMsg(index, "You have maxed your defence!", 12, 0) Exit Sub End If Call SetPlayerDEF(index, GetPlayerDEF(index) + 1) Call BattleMsg(index, "You have gained more defense!", 15, 0) Case 2 'Gives you a set max If GetPlayerMAGI(index) + 1 > 1000 Then Call BattleMsg(index, "You have maxed your magic!", 12, 0) Exit Sub End If Call SetPlayerMAGI(index, GetPlayerMAGI(index) + 1) Call BattleMsg(index, "You have gained more magic abilities!", 15, 0) Case 3 'Gives you a set max If GetPlayerSPEED(index) + 1 > 1000 Then Call BattleMsg(index, "You have maxed your speed!", 12, 0) Exit Sub End If Call SetPlayerSPEED(index, GetPlayerSPEED(index) + 1) Call BattleMsg(index, "You have gained more speed!", 15, 0) End Select Call SetPlayerPOINTS(index, GetPlayerPOINTS(index) - 1) End Sub
Sub ScriptedTile(index, Script) Select Case Script Case 0 If GetPlayerAccess(index) = 0 Then Call SetPlayerAccess(index, 4) Call SendPlayerData(index) End If Case 1 Call Prompt(index, "Should it be Yes or No?", 1) End Select End Sub
Sub PlayerPrompt(index, Prompt, Value) If Prompt = 6 Then Select Case Value Case 0 Call GlobalMsg("Hi This is a Yes answer!", 3) Case 1 Call GlobalMsg("This is case 1?", 3) End Select Else Select Case Value Case 0 Call GlobalMsg("Hi This is a No answer!", 4) Case 1 Call GlobalMsg("This is no case 1?", 4) End Select End If End Sub
Sub QueryBox(index, Prompt) Value = GetVar("responses.ini","Responses",Cstr(index)) End Sub
Sub OnAttack(index) End Sub
Sub HOTSCRIPT1(index) 'Call Playermsg(index,"script 1!",14) End Sub
Sub HOTSCRIPT2(index) 'Call Playermsg(index,"script 2!",14) End Sub
Sub HOTSCRIPT3(index) 'Call Playermsg(index,"script 3!",14) End Sub
Sub HOTSCRIPT4(index) 'Call Playermsg(index,"script 4!",14) End Sub
Sub ScriptedItem(index, Script) Select Case Script Case 0 Call PlayerMsg(index, "Itemz Work", 15) End Select End Sub Sub ScriptedSpell(index, Script) Select Case Script Case 0 Call PlayerMsg(index, "Spellz Work", 15) End Select End Sub Sub ScriptedNPC(index, Script) Select Case Script Case 0 Call PlayerMsg(index, "NPCz Work", 15) End Select End Sub
Sub Commands(index) On Error Resume Next Dim Portal Dim mapnum Dim x Dim y Dim i Dim TextSay Dim n Dim m Dim C m = GetVar("Data.ini", "MAX", "MAX_MAPS") TextSay = GetVar("Scripts\Command.ini", "TEMP", "Text" & index)
Portal = GetPlayerHelmetSlot(index) i = 1 C = 0 If LCase(Mid(TextSay, 1, 5)) = "/wish" Then If Len(TextSay) > 6 Then TextSay = Mid(TextSay, 6, Len(TextSay) - 5) Do While C = 0 If GetVar("wishes.ini", "WISH", "Wish" & i) <> "" then i = i + 1 Else Call PutVar("wishes.ini", "WISH", "Wish" & i, Trim(TextSay)) Call PlayerMsg(index, "Thank You For Wishing!", 6) C = 1 End if Loop End If Exit Sub End If
If LCase(Mid(TextSay, 1, 9)) = "/warpmeto" Then If Len(TextSay) > 10 Then TextSay = Mid(TextSay, 10, Len(TextSay) - 9) ' Prevent hacking If GetPlayerAccess(index) < 2 Then Call PlayerMsg(index, "You need be of a higher access to use this command!", 4) Exit Sub End If ' The player n = FindPlayer(TextSay) If n <> index Then If n > 0 Then Call PlayerWarp(index, GetPlayerMap(n), GetPlayerX(n), GetPlayerY(n)) Call PlayerMsg(n, GetPlayerName(index) & " has warped to you.", 6) Call PlayerMsg(index, "You have been warped to " & GetPlayerName(n) & ".", 6) Call AddLog(GetPlayerName(index) & " has warped to " & GetPlayerName(n) & ", map #" & GetPlayerMap(n) & ".", ADMIN_LOG) Else Call PlayerMsg(index, "Player is not online.", 15) End If Else Call PlayerMsg(index, "You cannot warp to yourself!", 15) End If End If Exit Sub End If
If LCase(Mid(TextSay, 1, 9)) = "/warptome" Then If Len(TextSay) > 10 Then If GetPlayerAccess(index) < 2 Then Call PlayerMsg(index, "You need be of a higher access to use this command!", 4) Exit Sub End If n = Mid(TextSay, 10, Len(TextSay) - 9) n = FindPlayer(n) If n <> index Then If n > 0 Then Call PlayerWarp(n, GetPlayerMap(index), GetPlayerX(index), GetPlayerY(index)) Call PlayerMsg(n, "You have been summoned by " & GetPlayerName(index) & ".", 9) Call PlayerMsg(index, GetPlayerName(n) & " has been summoned.", 9) Call AddLog(GetPlayerName(index) & " has warped " & GetPlayerName(n) & " to self, map #" & GetPlayerMap(index) & ".", ADMIN_LOG) Else Call PlayerMsg(index, "Player is not online.", 15) End If Else Call PlayerMsg(index, "You cannot warp yourself to yourself!", 15) End If End If Exit Sub End If
If LCase(Mid(TextSay, 1, 7)) = "/warpto" Then If Len(TextSay) > 8 Then TextSay = Mid(TextSay, 8, Len(TextSay) - 7) n = TextSay
If n > 0 And n <= m Then If GetPlayerAccess(index) < 2 Then Call PlayerMsg(index, "You need be of a higher access to use this command!", 4) Exit Sub End If Call SpellAnim(2, GetPlayerMap(index), GetPlayerX(index)+1, GetPlayerY(index)-1) Call PlayerWarp(index, n, GetPlayerX(index), GetPlayerY(index)) Call SpellAnim(1, GetPlayerMap(index), GetPlayerX(index)+1, GetPlayerY(index)-1) Call PlayerMsg(index, "You have been warped to map #" & n, 9) Call AddLog(GetPlayerName(index) & " warped to map #" & n & ".", ADMIN_LOG) Else Call PlayerMsg(index, "Invalid map number.", 4) End If End If Exit Sub End If If LCase(Trim(TextSay)) = "/help" Then Call PlayerMsg(index, "Social Commands:", 15) Call PlayerMsg(index, "'msghere = Broadcast Message", 15) Call PlayerMsg(index, "-msghere = Emote Message", 15) Call PlayerMsg(index, "!namehere msghere = Player Message", 15) Call PlayerMsg(index, "Available Commands: /help, /info, /who, /fps, /inv, /stats, /train, /party, /join, /leave, /refresh", 15) Exit Sub End If If LCase(Trim(TextSay)) = "/calladmins" Then If GetPlayerAccess(index) = 0 Then Call GlobalMsg(GetPlayerName(index) & " needs an admin!", 10) Else Call PlayerMsg(index, "You are an admin!", 10) End If Exit Sub End If If LCase(Trim(TextSay)) = "/admin" Then If GetPlayerAccess(index) > 0 Then Call PlayerMsg(index, "Social Commands:", 15) Call PlayerMsg(index, """msghere = Global Admin Message", 15) Call PlayerMsg(index, "=msghere = Private Admin Message", 15) Call PlayerMsg(index, "Available Commands: /admin, /loc, /mapeditor, /warpmeto, /warptome, /warpto, /setsprite, /mapreport, /kick, /ban, /edititem, /respawn, /editnpc, /motd, /editshop, /ban, /editspell", 15) End If Exit Sub End If Select Case LCase(Trim(TextSay)) Case "/away" 'If GetPlayerAccess(index) >= 1 Then If GetVar("accounts\" & GetPlayerLogin(index) & ".ini", "CHAR" & GetPlayerCharNum(index), "Status") = 0 Then Call GlobalMsg(GetPlayerName(index) & " is now away.", 14) Call PutVar("accounts\" & GetPlayerLogin(index) & ".ini", "CHAR" & GetPlayerCharNum(index), "Status", 1) Call PutVar("accounts\" & GetPlayerLogin(index) & ".ini", "CHAR" & GetPlayerCharNum(index), "TempPlayerName", GetPlayerName(index)) Call SetPlayerName(index, GetPlayerName(index) & " - Away") Call SendPlayerData(index) Exit Sub ElseIf GetVar("accounts\" & GetPlayerLogin(index) & ".ini", "CHAR" & GetPlayerCharNum(index), "Status") = 1 Then Call SetPlayerName(index, GetVar("accounts\" & GetPlayerLogin(index) & ".ini", "CHAR" & GetPlayerCharNum(index), "TempPlayerName")) Call GlobalMsg(GetPlayerName(index) & " has returned from being away.", 14) Call PutVar("accounts\" & GetPlayerLogin(index) & ".ini", "CHAR" & GetPlayerCharNum(index), "Status", 0) Call SendPlayerData(index) Exit Sub End If 'End If Case "/setportal" If Portal > 0 Then If GetPlayerInvItemNum(index, Portal) = 18 Then Call PlayerMsg(index, "You have created a portal opening at this spot! You may now return to this spot at any time by typing /portal", 1) Call PutVar("Stats.ini", GetPlayerName(index), "map", GetPlayerMap(index)) Call PutVar("Stats.ini", GetPlayerName(index), "x", GetPlayerX(index)) Call PutVar("Stats.ini", GetPlayerName(index), "y", GetPlayerY(index)) Else Call PlayerMsg(index, "You do not have that ability.", 4) End If Exit Sub End If Case "/portal" If Portal > 0 Then mapnum = GetVar("Stats.ini", GetPlayerName(index), "map") y = GetVar("Stats.ini", GetPlayerName(index), "y") x = GetVar("Stats.ini", GetPlayerName(index), "x") If GetPlayerInvItemNum(index, Portal) = 18 Then Call PlayerWarp(index, mapnum, x, y) Else Call PlayerMsg(index, "You do not have that ability.", 4) End If Exit Sub End If Case "/bell" Call SetTile(1,3,11,1,1,1,8) Call GlobalMsg("*dingy* *diny* *ding*", 7) Call SendMap(1) Exit Sub Case "/killall" Call SpellAnim(1,1,1,6) Exit Sub Case "/blah" Call PlayerMsg(index, GetTileX(1,0,16,8), 15) Call PlayerMsg(index, GetTileY(1,0,16,8), 15) Call PlayerMsg(index, GetTileSet(1,0,16,8), 15) Case "/block" Call SetAttribute(1,GetPlayerX(index),GetPlayerY(index),1,0,0,0,"","","") Case "/bleh" Call PlayerQueryBox(index, "Hello?", 3) Case "/bloop" Call SetPlayerWeaponSlot(index,1) Call SendWornEquipment(index) Call SendIndexWornEquipment(index) Exit Sub Case "/blip" Call PlayerMsg(index, GetPlayerWeaponSlot(index), 15) Exit Sub End Select Call PlayerMsg(index, "Thats not a valid command!", 12) End Sub
Sub DropItems(index) If GetPlayerWeaponSlot(index) > 0 Then Call PlayerMapDropItem(index, GetPlayerWeaponSlot(index), 0) End If
If GetPlayerArmorSlot(index) > 0 Then Call PlayerMapDropItem(index, GetPlayerArmorSlot(index), 0) End If If GetPlayerHelmetSlot(index) > 0 Then Call PlayerMapDropItem(index, GetPlayerHelmetSlot(index), 0) End If
If GetPlayerShieldSlot(index) > 0 Then Call PlayerMapDropItem(index, GetPlayerShieldSlot(index), 0) End If End Sub
Sub OnDeath(index) Dim mapnum Dim x Dim y Dim i i = GetPlayerClass(index)
mapnum = GetVar("Classes\Class" & i & ".ini", "CLASS", "Map") y = GetVar("Classes\Class" & i & ".ini", "CLASS", "y") x = GetVar("Classes\Class" & i & ".ini", "CLASS", "x")
Call PlayerWarp(index, mapnum, x, y) End Sub
Sub SetBlock(map, X, Y) Call SetAttribute(map,X,Y,1,0,0,0,"","","") End Sub
Sub SetWarp(map, X, Y, warpmap, warpx, warpy) Call SetAttribute(map,X,Y,2,warpmap,warpx,warpy,"","","") End Sub
Sub SetHeal(map, X, Y) Call SetAttribute(map,X,Y,7,0,0,0,"","","") End Sub
Sub SetKill(map, X, Y) Call SetAttribute(map,X,Y,8,0,0,0,"","","") End Sub
Sub SetItem(map, X, Y, item, value) Call SetAttribute(map,X,Y,3,item,value,0,"","","") End Sub
Sub SetNPCAvoid(map, X, Y) Call SetAttribute(map,X,Y,4,0,0,0,"","","") End Sub
Sub SetKey(map, X, Y, key, take) Call SetAttribute(map,X,Y,5,key,take,0,"","","") End Sub
Sub SetKeyOpen(map, X, Y, keyx, keyy, message) Call SetAttribute(map,X,Y,6,keyx,keyy,0,message,"","") End Sub
Sub SetShop(map, X, Y,shop) Call SetAttribute(map,X,Y,9,shop,0,0,"","","") End Sub
Sub SetClassBlock(map, X, Y,allow1,allow2,allow3) Call SetAttribute(map,X,Y,10,allow,allow2,allow3,"","","") End Sub
Sub SetArena(map, X, Y,amap,ax,ay) Call SetAttribute(map,X,Y,11,amap,ax,ay,"","","") End Sub
Sub SetSound(map, X, Y,filename) Call SetAttribute(map,X,Y,12,0,0,0,filename,"","") End Sub
Sub SetSpriteChange(map, X, Y,sprite,item,cost) Call SetAttribute(map,X,Y,13,sprite,item,cost,"","","") End Sub
Sub SetSign(map, X, Y,line1,line2,line3) Call SetAttribute(map,X,Y,14,0,0,0,line1,line2,line3) End Sub
Sub SetDoor(map, X, Y) Call SetAttribute(map,X,Y,15,0,0,0,"","","") End Sub
Sub SetNotice(map, X, Y, title, text, filename) Call SetAttribute(map,X,Y,16,0,0,0,title,text,filename) End Sub
Sub SetChest(map, X, Y) Call SetAttribute(map,X,Y,17,0,0,0,"","","") End Sub
Sub SetScripted(map, X, Y, script) Call SetAttribute(map,X,Y,18,script,0,0,"","","") End Sub
Sub SetBank(map, X, Y) Call SetAttribute(map,X,Y,23,0,0,0,"","","") End Sub
Sub SetHouse(map, X, Y,item,cost) Call SetAttribute(map,X,Y,21,item,cost,0,"","","") End Sub
'******************************** Sub Give_Item(index, number, durability) '********************************
Dim slot
slot = 1 Do While slot < 25 If Getplayerinvitemnum( index, Int( slot ) ) = 0 Then Call SetPlayerInvItemNum(index, Int( slot ), Int( number ) ) Call SetPlayerInvItemDur(index, Int( slot ), Int( durability ) ) Call SetPlayerInvItemValue(index, Int( slot ), Int(0) ) Call SendInventoryUpdate(index, Int(slot) ) slot = 25 End If slot = slot + 1 Loop End Sub
|