Kaliber: Ich meinte ja nicht wirklich ne Kette und es ist auch kein großer Aufwand, nur damit es schön ist und man auf nichts verzichten muss, halt professionell Du müsstest halt wie im Beispiel einfach das Apostroph mit dem Phrase #Apostroph ersetzen und beim bekommen des MySQL Inhalts vor der Ausgabe wieder den Phrase #Apostroph mit einem Apostroph ersetzen. Würde man glaube in 2 Zeilen schaffen, jedenfalls in Java :p
Beiträge von Alf21
-
-
Wenn du in SAMP was erreichen willst würde ich dir empfehlen dir lieber ein Team zu suchen und das dann zu sponsern, zB die Server usw.. Aber mach mal, wenn man mal so eben 200€ für nen Gamemode ausgeben will und dann was auf die Beine stellen will, wahrscheinlich alleine
-
Du meinst ja, dass du für die MySQL Datenbank gegen eine ungewollte Injection die " ' " entfernst. Könntest du sie nicht auch mit einem
Phrase statt Leerzeichen ersetzen (replace)? zB mit einer Kette, die man nicht normal schreibt und diese nach der MySQL Abfrage wieder zurücksetzen bzw den ersetzten Phrase wieder mit einem " ' " ersetzen? Habe ich so gemacht, zB " ' " -> #Apostroph -> " ' " -
Nach dem Wiki gibts glaube aber ein Limit von 1000, nur so zur Info: https://wiki.sa-mp.com/wiki/RemoveBuildingForPlayer
//edit
Vielleicht könnte das auch für dich interessant sein, keine Ahnung, bin am Handy und hab nicht durchgelesen ob dadurch auch der Bug gefixt wird (Include): http://forum.sa-mp.com/showthread.php?p=1551937 -
denke mal über https://wiki.sa-mp.com/wiki/CreatePickup oder CreateObject, aber eher Pickup, einfach googlen
-
Als erstes packst du an diese Stelle ein Haus Icon, dann musst du abfragen, wenn jmd zB /enter drückt, ob er in der Range von dem Icon / der Position ist, falls ja, dann setzt du das Interior bzw tpst ihn und merkst dir die alte Position, um bei /exit ihn wieder an den alten Punkt zu setzen
-
Danke für das Video, echt gut gezeigt Also hätte es das früher gegeben, hätte ich es schneller hinbekommen, aber nun ist es ja einmal für andere gut erklärt
-
So kannst du sie zB speichern, dafür brauchst du doch gar kein Enum oder sonstiges:
Codefor(new i = 0; i <= 12; i++){ new weaponId = GetPlayerWeapon(playerid); new ammo = GetPlayerAmmo(playerid); //lieber über PlayerWeaponData lösen //mysql query: UPDATE [TABLENAME] SET weapon%d = '%d' WHERE player = '%s' -> i, weaponId, GetPlayerName(playerid) //mysql query: UPDATE [TABLENAME] SET ammo%d = '%d' WHERE player = '%s' -> i, ammo, GetPlayerName(playerid) }
Und bei deinem Enum musst du es dann glaube in PAWN so machen: Waffe[playerid][10] und da passiert nichts, da du den Enum noch keinen Wert gegeben hast, das musst du nachdem du die Waffe vergibst mit Waffe[playerid][10][waffe] = weaponId.. Sorry, mache nichts mehr mit Pawn, hoffe du kannst es dir selbst zusammenstückeln und weißt, was ich meine.
//edit, ansonsten könnte dich vllt so etwas interessieren: Serverside Ammo / Reload
-
Du musst eh erstmal bedenken, dass die Waffen auch in Abhängigkeit des Spielers erstellt werden und nicht Global
-
verstehe die Frage nicht, aber wenn du es 10x brauchst, dann eig
Codefor(new i=0;i<10;i++){ // es geht bis Waffe[9], ist aber 10x vorhanden, da 0 mitberechnet wird Waffe[i]... }
//edit
Wenn du es speichern willst, dann kannst du einfach jeden Slot des Spielers abfragen, welche Waffe er dort trägt, merkst dir den Slot und fügst in zB in ner MySQL Datenbank ein, also die Tabelle könnte z.B. so aussehen: den Primary Key für jeden Spieler, nen char(24) für den Spielernamen und dann nur noch weapon0 INTEGER und ammo0 INTEGER, dh. halt für jeden Slot weapon%d und ammo%d -
http://wiki.sa-mp.com/wiki/Weapons
Arbeite momentan an nem Waffensystem, ist aber in Java übers Shoebill Plugin:
Codepublic int[] getSlotWeapons(int slot){ if(slot == 0){ int[] weapons = {0,1}; return weapons; } else if(slot == 1){ int[] weapons = {2,3,4,5,6,7,8,9}; return weapons; } else if(slot == 2){ int[] weapons = {22,23,24}; return weapons; } else if(slot == 3){ int[] weapons = {25,26,27}; return weapons; } else if(slot == 4){ int[] weapons = {28,29}; return weapons; } else if(slot == 5){ int[] weapons = {30,31}; return weapons; } else if(slot == 6){ int[] weapons = {33,34}; return weapons; } else if(slot == 7){ int[] weapons = {35,36,37,38}; return weapons; } else if(slot == 8){ int[] weapons = {39}; return weapons; } else if(slot == 9){ int[] weapons = {41,42,43}; return weapons; } else if(slot == 10){ int[] weapons = {10,11,12,13,14,15}; return weapons; } else if(slot == 11){ int[] weapons = {44,45,46}; return weapons; } else { int[] weapons = {40}; return weapons; } }
Da kannst du die WaffenIds für die jeweiligen Slots auch rausnehmen oder umschreiben.. -
Aber sobald ne Makefile dabei ist sollte es doch recht einfach gehen, gibt paar Tutorials im Netz / YouTube, ich musste das auch beim alten RNPC machen, da gabs nichts für Linux
-
1. Schau lieber nach bevor wir rätseln und es daran liegt
2. Ich glaube es gab eine Begrenzung der Anzahl der Filterscripts. Fasse sie in einem oder mehreren Filterscripts zusammen oder nehme die, die du nicht brauchst, raus (siehe:Code... [22:05:54] Loading filterscript 'npc_record.amx'... [22:05:54] Unable to load filterscript 'npc_record.amx'. [22:05:54] Loading filterscript 'ospawner.amx'... [22:05:54] Unable to load filterscript 'ospawner.amx'. [22:05:54] Loading filterscript 'pirateship.amx'... [22:05:54] Unable to load filterscript 'pirateship.amx'. [22:05:54] Loading filterscript 'pnetstats.amx'... [22:05:54] Unable to load filterscript 'pnetstats.amx'.
3.Die aktuelle SAMP Version ist 0.3.7, das heißt, dass du entweder deine Serverdateien updaten musst, oder mit 0.3z compilen musst. -
1. Hast du überhaupt die Plugins in der server.cfg eingetragen?
2. Warum sind so viele Filterscripts am laden, es werden nicht mal alle geladen (glaube zu viele)
3. Ist der Gamemode überhaupt unter Gamemodes eingefügt bzw der Gamemode fehlerfrei kompliert und zwar auf 0.3z? -
Als ob man ohne MySQL so etwas nicht bauen könnteHast ja recht, aber ich meine, dass es so deutlich einfacher ist, über verschiedene Anwendungen zu kommunizieren Bzw. wenn man seinen Gameserver / Gamemode über einen Gamehoster hat, der zB kein Root Server, sondern nur SAMP an sich hostet, dann geht das glaube gar nicht anders als mit MySQL..
-
Ich kann dir nur dazu raten, alles mit Daten über MySQL zu regeln, ob MongoDB (Java) oder MySQL (phpMyAdmin)! Denn falls du etwas großes vorhast, dann brauchst du spätestens MySQL, sobald du ein UCP (User Control Panel) / ACP (Admin Control Panel) bauen willst. Ich finde es auch einfacher... Denn später alles neu umzuschreiben dauert auch seine Zeit
-
@Rocky: Dein Downloadlink für den RC4 Windows Server ist broken -> Du hast hhttp:// geschrieben, ein 'h' muss vorne weg
-
Achso dachte hast schon alles richtig installiert
Aber ich empfehle dir trotzdem JRE 8, keine Ahnung ob man das in Shoebill für irgendetwas braucht, aber generell hat es ja seine Gründe, dass es eine neue Java Version gab... Ich musste mein Projekt glaube sogar auf JRE8 machen, da es einen Konflikt beim Compilen gab -
Probiers mal mit JRE 8
-
Achso, oh :o
Hier der Link für Shoebill 1.1, steht auch in 123marvin123 's Signatur:
Project Shoebill 1.1 - Schreibe Gamemodes in JavaPS: Falls du einen Grundaufbau brauchst mit MySQL, Passwortencryption und Dialogen, kannst mich gerne PN anschreiben oder falls du Hilfe brauchst, aber Marvin macht auch top Support
//edit Hinweis
Hier kann man für den Anfang auch noch viel abgucken, um zu sehen wie man mit maven umgehen muss. Das ist echt eine gute Hilfe:
Autohaus System für Shoebill (Java) by 123marvin123