Also war ich doch auf dem Richtigen Weg, nur in der Durchführung auf dem falschen Fuß.
Danke @Shape:
Lg
Beiträge von Teddy
-
-
Guten Abend,
ich habe vor Kurzem angefangen etwas zu experimentieren, finde allerdings bisher keine Lösung.
Das Problem:
Ich möchte den Inhalt der einen Variable ( String ) als Namen für eine weitere Variable verwenden, um in einem automatisierten Vorgang variablen zu erstellen.Der Lösungsgedanke:
Mein Vorschlag wäre gewesen den Namen der Variable als Inhalt einer Tabelle zu verwenden / erstellenDer Ansatz:
Lua
Alles anzeigentable1 = { } table2 = {} function testfunction () local i = 1 local im = table.maxn (table1) while i <= im do local var[i] = createObject (1318, 111,111,111 ) --Koordinaten sind einfach irgendwelche i=i+1 end end
Das Problem:
Diese Variante birgt allerdings bei der Abfrage nach dem Element folgende Fehlermeldung: Expected String at argument 1, got booleanHat jemand Ideen?
Lg -
Lua
Alles anzeigenfunction ochat_func ( player, cmd, ... ) local parametersTable = {...} local stringWithAllParameters = table.concat( parametersTable, " " ) if isAdminLevel ( player, 1 ) then if stringWithAllParameters == nil then triggerClientEvent ( player, "infobox_start", getRootElement(), "\nBitte einen\nText eingeben!", 5000, 125, 0, 0 ) else local rang = tonumber(getElementData ( player, "adminlvl" )) if rang == 1 then rank = "Moderator" elseif rang == 2 then rank = "Admin" elseif rang == 3 then rank = "Admin m. V." elseif rang == 4 then if getPlayerName(player) == "[Vio]Zipper" or getPlayerName(player) == "[Vio]Michael" then rank = "Scripter & Inhaber" else rank = "Inhaber" end end outputChatBox ( "(( "..rank.." "..getPlayerName(player)..": "..stringWithAllParameters.." ))", getRootElement(), 255, 255, 255 ) -- R, G, B end else triggerClientEvent ( player, "infobox_start", getRootElement(), "\nDu bist kein\n Admin!", 5000, 125, 0, 0 ) end
Lua
Alles anzeigenfunction ochat_func ( player, cmd, ... ) local parametersTable = {...} local stringWithAllParameters = table.concat( parametersTable, " " ) if isAdminLevel ( player, 1 ) then if stringWithAllParameters == nil then triggerClientEvent ( player, "infobox_start", getRootElement(), "\nBitte einen\nText eingeben!", 5000, 125, 0, 0 ) else local rang = tonumber(getElementData ( player, "adminlvl" )) if rang == 1 then rank = "Moderator" elseif rang == 2 then rank = "Admin" elseif rang == 3 then rank = "Admin m. V." elseif rang == 4 then if getPlayerName(player) == "[Vio]Zipper" or getPlayerName(player) == "[Vio]Michael" then rank = "Scripter & Inhaber" else rank = "Inhaber" end end outputChatBox ( "(( "..rank.." "..getPlayerName(player)..": "..stringWithAllParameters.." ))", getRootElement(), 255, 0, 0) end else triggerClientEvent ( player, "infobox_start", getRootElement(), "\nDu bist kein\n Admin!", 5000, 125, 0, 0 ) end
So wird der von dir geschriebene Text rot.Lg
-
Ich Lehne mich mal weit aus meiner Erinnerungsfabrik und sage admincmds.lua relativ Mittig. ( such dort mal nach "ochat" )
Dort einfach den RGB-Code ändern.
Lg -
Guten Abend,
Ich finde der Map mangelt es noch an Dekorationen wie weitere Pflanzen oder ähnliches.
Außerdem halte ich ein Helipad mitten in einer Stadt eher für fragwürdig.Da du eher mit wenigen Objekten arbeiten mochtest ( entnehme ich deinem Post ) hätte ich den Zaun auch eher weggelassen.
So haut es mich noch nicht vom Hocker.
Bleib dran, das wird schon
Lg -
Du überschreibst ja wahrscheinlich den Skin in der Datenbank nicht -> auslesen, setzten Fertig
Lg -
versuch mal vio outputChatBox dir die Position von KTM1 ausgeben zu lassen.
Der EventHandler ist eigentlich richtig formuliert ( oder ich bin blind, soll ja vorkommen )
Lg -
Dein Code:
Lua
Alles anzeigenfunction KT () outputChatBox("Du hast eine Kleine Tour gestatet!", source, 0, 255, 0) KTVeh = createVehicle(499 ,2825, 2602, 10, 0, 0, 40, "Trucker") warpPedIntoVehicle(source, KTVeh) finish = math.random(1,3) if finish == 1 then local KTM1 = createMarker(2787, -2456.2, 11, "checkpoint", 5, 255, 0, 0) --- VERBINDEN ZUR ZEILE 22!!! GEHT NICHT!!! KTB1 = createBlip (2787, -2456.2, 11, 19) outputChatBox("Folge der Fahne!", source, 255, 255, 0) elseif finish == 2 then KTM2 = createMarker(-2223.7, -2320, 28, "checkpoint", 5, 255, 0, 0) KTB2 = createBlip (-2223.7, -2320, 28, 19) outputChatBox("Folge der Fahne!", source, 255, 255, 0) elseif finish == 3 then KTM3 = createMarker(-2439.8, 2230.3, 4.8, "checkpoint", 5, 255, 0, 0) KTB3 = createMarker(-2439.8, 2230.3, 4.8, 19) end end addEvent("KleineTour", true) addEventHandler("KleineTour", getRootElement(), KT)
Betrachten wir Zeile 7 mal genauer:
Lualocal KTM1 = createMarker(2787, -2456.2, 11, "checkpoint", 5, 255, 0, 0) --- VERBINDEN ZUR ZEILE 22!!! GEHT NICHT!!!
Durch das, dass du "local" innerhalb einer Funktion nutzt kannst du den Marker nur innerhalb dieser Funktion ansprechen.
-> "local" streichen und du kannst diesen Marker mit anderen Funktionen abrufen.Wenn du das ganze so probierst, was meldet er dann als Fehler?
Lg -
Du musst das "local" bei den Markererstellungen rausstreichen, da sonst diese Variable ( beziehungsweise die Ansprechbarkeit der Marker ) innerhalb dieser Funktion bleibt.
Wegen den Tabellen: Wenn du dort Fragen hast kannst du mich gerne Fragen. Bin nur zur Zeit relativ selten aktiv.
Lg -
Benutze doch diese Funktionen: http://wiki.multitheftauto.com/wiki/FileOpen
Lg -
Ich für meinen Teil bin nicht religiös.
Ich glaube was ich sehe.
Lg -
Nutzername von Uplay: IVIichi
Lg -
Können wir gerne mal zocken, habe nur zur Zeit leider sehr wenig zeit wegen Arbeit...
Vielleicht finden wir ja mal zusammen.
Lg -
Wieso nutzt du onMarkerHit ( event ) in verbindung mit getRootElement()?
Trage mal den Markernamen statt getRootElement ein, da sonst der Script bei jedem Marker auslöst.
Sollten weiterhin Fehler entstehen, bitte ich mal um das vollständige Script, um dieses mal durcharbeiten zu können.
Mfg
-
Schonmal eine Neuinstallation versucht?
MfG -
Ich gehe mal stark davon aus hier findest du was du suchst.
https://forum.multitheftauto.com/viewtopic.php?f=13&t=29363
Lg
EDIT: Da war mal wieder jemand schneller *thumbsup* -
Ich würde an eurer Stelle mal sicherstellen dass die Ports alle richtig freigeschalten sind.
Die Downloads erfolgen über den HTTP-Port ( Zumindest laut mtaserver.conf )
Ob alle Ports richtig geöffnet sind kann man mit openports in der Console nachvollziehen
Mfg -
Die SuFu sei dein Gebieter...
Ich empfehl XAMPP weiter, ziemlich einfach und halt alles was man so braucht.
XAMPP
Mfg -
Script öffnen oben auf kodierung klicken dann auf UTF-8 und fertig.
vorausgesetzt du nutzt Notepad++ oder andere Editoren, an denen du an der Kodierung rumpfuschen kannst.
Mfg -