Kann ja sein aber schreib es mal anders. Ich weiss ja nicht ob runcode oder das Adminpanel das ins richtige umwandeln ?
Beiträge von DKong
-
-
Das getElementData muss genau so wie ich es geschrieben habe, da stehen, Vielleicht ist dass das Problem ?
-
Meinst du jetzt, dass man mehrere Carmods in 1ner Resource hat ?
Das ist möglich. Es gibt ne Resource namens Modloader, die erleichtert dir die schreibarbeit -
Schreib doch mal Nitrado an.
-
Das "Teil" funktioniert nicht mehr, da es die PHP Datei, die die Daten der Website verarbeitet und an den Client zurückschickt, nicht mehr online ist.
Wenn du mal die URL, die per callRemote aufgerufen wird, aufrufst, dann bekommste nen 404 Error. -
Jaa ich hatte mir ja zuerst getVehicleHandling angeschaut. Dasist ja Client und Serverseitig.
Deshalb hatte ich erst gedacht setVehicleHandling wäre das auchAber ich habs dann Serverseitig umgescriptet und jetzt funktioniert alles.
-
ICh habe ein PRoblem:
Ich habe ein Script, mit dem man sich einen besseren Motor fürs Auto kaufen kann.Aber jetzt funktioniert es nicht, dass man dann einen anderen Motor bekommt.
Hier das Script:
Lua
Alles anzeigenfunction gridListClicked( btn ) if btn == 'left' and guiGridListGetSelectedItem( upgradeGUI.gridList.grd ) ~= -1 then local row = guiGridListGetSelectedItem( source ) if btnPressed == shopGUI.buttons[ "Paintjob" ] then local moddingVeh = getPedOccupiedVehicle(getLocalPlayer()) if row == 0 then setVehicleHandling(moddingVeh, "driveType", "awd") setVehicleHandling(moddingVeh, "maxVelocity", 200) setVehicleHandling(moddingVeh, "engineAcceleration", 15) setElementData(moddingVeh, "motor", 1) outputChatBox("Motor 1", getLocalPlayer()) elseif row == 1 then setVehicleHandling(moddingVeh, "driveType", "awd") setVehicleHandling(moddingVeh, "maxVelocity", 250) setVehicleHandling(moddingVeh, "engineAcceleration", 20) setElementData(moddingVeh, "motor", 2) outputChatBox("Motor 2") elseif row == 2 then setVehicleHandling(moddingVeh, "driveType", "awd") setVehicleHandling(moddingVeh, "maxVelocity", 300) setVehicleHandling(moddingVeh, "engineAcceleration", 25) setElementData(moddingVeh, "motor", 3) outputChatBox("Motor 3") elseif row == 3 then setVehicleHandling(moddingVeh, "driveType", "awd") setVehicleHandling(moddingVeh, "maxVelocity", 350) setVehicleHandling(moddingVeh, "engineAcceleration", 30) setElementData(moddingVeh, "motor", 4) outputChatBox("Motor 4") end end end end
-
-
//Edit: Download wurde gefixt
So, es geht darum, wie man die Waffen, den Skin, das Geld und die Position des Spielers speichert, und wenn der Spieler sich wieder einloggt, lädt.
So, als erstes weisen wir einem Event eine Funktion zu. Das Event ist Serverseitig und heist: "onPlayerLogin".
Nun laden wir den Account des spielers und prüfen mit einer if-Abfrage, ob dieser gefunden wurde:
Jetzt prüfen wir, ob bereits Daten des Spielers gespeichert worden sind:
Jetzt laden wir das Geld des Spielers und prüfen, ob es gefunden wurde:Lualocal playermoney = getAccountData ( playeraccount, "s.HandMoney" ) if ( playermoney ) then setPlayerMoney ( source, playermoney ) end
Jetzt laden wir den Skin, den Interrior und die Position des Spielers und spawnen ihn:Lualocal playerInt = getAccountData (playeraccount, "s.int") local playerDim = getAccountData (playeraccount, "s.dim") local playerSkin = getAccountData (playeraccount, "s.skin") local playerX = getAccountData (playeraccount, "s.x") local playerY = getAccountData (playeraccount, "s.y") local playerZ = getAccountData (playeraccount, "s.z") local playerRot = getAccountData (playeraccount, "s.rot") spawnPlayer(source, playerX, playerY, playerZ+1, playerRot, playerSkin, playerInt, playerDim) fadeCamera (source, true) setCameraTarget (source, source)
Jetzt laden wir die ganzen Waffen des Spielers und geben sie ihm:Lua
Alles anzeigenlocal weap0 = getAccountData(playeraccount, "s.weap0") local weap1 = getAccountData(playeraccount, "s.weap1") local weap2 = getAccountData(playeraccount, "s.weap2") local ammo2 = getAccountData(playeraccount, "s.ammo2") local weap3 = getAccountData(playeraccount, "s.weap3") local ammo3 = getAccountData(playeraccount, "s.ammo3") local weap4 = getAccountData(playeraccount, "s.weap4") local ammo4 = getAccountData(playeraccount, "s.ammo4") local weap5 = getAccountData(playeraccount, "s.weap5") local ammo5 = getAccountData(playeraccount, "s.ammo5") local weap6 = getAccountData(playeraccount, "s.weap6") local ammo6 = getAccountData(playeraccount, "s.ammo6") local weap7 = getAccountData(playeraccount, "s.weap7") local ammo7 = getAccountData(playeraccount, "s.ammo7") local weap8 = getAccountData(playeraccount, "s.weap8") local ammo8 = getAccountData(playeraccount, "s.ammo8") local weap9 = getAccountData(playeraccount, "s.weap9") local ammo9 = getAccountData(playeraccount, "s.ammo9") local weap10 = getAccountData(playeraccount, "s.weap10") local weap11 = getAccountData(playeraccount, "s.weap11") local weap12 = getAccountData(playeraccount, "s.weap12") giveWeapon ( source, weap0, 1 ) giveWeapon ( source, weap1, 1 ) giveWeapon ( source, weap2, ammo2 ) giveWeapon ( source, weap3, ammo3 ) giveWeapon ( source, weap4, ammo4 ) giveWeapon ( source, weap5, ammo5 ) giveWeapon ( source, weap6, ammo6 ) giveWeapon ( source, weap7, ammo7 ) giveWeapon ( source, weap8, ammo8 ) giveWeapon ( source, weap9, ammo9 ) giveWeapon ( source, weap10, 1 ) giveWeapon ( source, weap11, 1 ) giveWeapon ( source, weap12, 1 )
Jetzt kommt die Funktion, wenn die Spielerdaten nicht gefunden wurden:Luaelse spawnPlayer(source, 2139, 1459, 12 ,0,0,0,0) fadeCamera (source, true) setCameraTarget (source, source)
Jetzt wird noch die Funktion und die IF-Abfragen geschlossen:
So, jetzt kommt das Event, wenn der Spieler den Server verlässt:
Jetzt wird wieder der Spieleraccount geladen und geprüft ob er gefunden wurde:
Jetzt speichern wir die Position des Spielers in drei Variablen:
Jetzt speichern wir die Position, den Skin und das Geld des Spielers in den Account Daten:LuasetAccountData ( playeraccount, "s.HandMoney", getPlayerMoney ( source ) ) setAccountData (playeraccount, "s.skin", tostring (getPedSkin (source))) setAccountData (playeraccount, "s.x", x) setAccountData (playeraccount, "s.y", y) setAccountData (playeraccount, "s.z", z) setAccountData (playeraccount, "s.int", getElementInterior (source)) setAccountData (playeraccount, "s.dim", getElementDimension (source)) setAccountData (playeraccount, "s.rot", getPedRotation (source))
Jetzt werden noch die ganzen Waffen des Spielers gespeichert:Lua
Alles anzeigensetAccountData (playeraccount, "s.weap0", getPedWeapon ( source, 0 )) setAccountData (playeraccount, "s.weap1", getPedWeapon ( source, 1 )) setAccountData (playeraccount, "s.weap2", getPedWeapon ( source, 2 )) setAccountData (playeraccount, "s.ammo2", getPedTotalAmmo ( source, 2 )) setAccountData (playeraccount, "s.weap3", getPedWeapon ( source, 3 )) setAccountData (playeraccount, "s.ammo3", getPedTotalAmmo ( source, 3 )) setAccountData (playeraccount, "s.weap4", getPedWeapon ( source, 4 )) setAccountData (playeraccount, "s.ammo4", getPedTotalAmmo ( source, 4 )) setAccountData (playeraccount, "s.weap5", getPedWeapon ( source, 5 )) setAccountData (playeraccount, "s.ammo5", getPedTotalAmmo ( source, 5 )) setAccountData (playeraccount, "s.weap6", getPedWeapon ( source, 6 )) setAccountData (playeraccount, "s.ammo6", getPedTotalAmmo ( source, 6 )) setAccountData (playeraccount, "s.weap7", getPedWeapon ( source, 7 )) setAccountData (playeraccount, "s.ammo7", getPedTotalAmmo ( source, 7 )) setAccountData (playeraccount, "s.weap8", getPedWeapon ( source, 8 )) setAccountData (playeraccount, "s.ammo8", getPedTotalAmmo ( source, 8 )) setAccountData (playeraccount, "s.weap9", getPedWeapon ( source, 9 )) setAccountData (playeraccount, "s.ammo9", getPedTotalAmmo ( source, 9 )) setAccountData (playeraccount, "s.weap10", getPedWeapon ( source, 10 )) setAccountData (playeraccount, "s.weap11", getPedWeapon ( source, 11 )) setAccountData (playeraccount, "s.weap12", getPedWeapon ( source, 12 ))
Und jetzt wird noch gespeichert, dass die Daten erstellt wurden, bzw. existieren:
Zum Schluss wird die Funktion noch geschlossen:Das komplette Script ist Serverside.
Ich wünsche euch viel Spass mit diesem Tutorial und dem Script. -
-
Jaa aber man kann nur mit 5 Leuten in ein Netzwerk. d.h. man muss unendlich viele Netztwerke erstellen für nen Homeserver lol
-
Aso hatte es noch nich gesehen
-
Und warum soll er nicht den Originalen nehmen ?
-
Hier gibts ein Pack mit den Standart MTA Resourcen. Entpacke das mal in den Resources Ordner
-
Vielleicht liegts ja auch an einer alten Lan/WLAN Karte.
Wenn es eine sehr langsame Karte ist, dann würd ich sie wechseln.
-
ICh meinte ja auch das Englische.
Naja das Script gibts jetzt auch als Download für die Ganz faulen
http://community.multitheftauto.com/index.php?p=re…details&id=5686
-
Ich würd das Client bei onClientPlayerJoin wegnehmen und das Script Serverseitig in der Meta.xml angeben
-
Lad dir am besten mal die neuste Version runter:
http://www.multitheftauto.com/Ich würd aber Vorher ein backup vom server ordner machen, da sonst alles gemapptes/gescriptetes weg ist.
Und du musst, wenn du auf einen MTA Server joinst, nochmalm alles neu runterladen.
-
Hmm also ich hab grad auf meinem PC nen Server gestartet und die Ports freigeschaltet und bei mir gehts.
Warum bei dir nicht, weiss ich auch nicht. -