Beiträge von Kasakow
-
-
Prüf doch mal nach, ob die Funktion auch wirklich funktioniert.Die Funktion gibt einen boolischen Wert zurück, sonst würde der Server dir eine Fehlermeldung bei deiner Abfrage ausspucken,
wobei ich den Sinn hinter deiner != true Abfrage nicht sehe, aber du wirst dir da schon was bei gedacht haben.Ich habe bereits gemerkt, dass diese Funktion nicht klappt.
Habs auch schon bereits dem GT-MP Team gemeldet, und ja ich hab mir was bei "!= true" gedacht
-
Wüsste nicht wo wir das falsch verwenden.
Ich habe mich an die WIKI gehalten, klappt ja trotzdem nicht.-> WIKI EINTRAG <-
-> Benutzung <-
Quasi sollte shoot nun ein Boolean Ergebnis zurückgeben, da es in der Wiki ja so steht.
-
-
-
Ich benutze die Modifikation 'GT-MP', man kann in der Mod Bootstrap und eigene Styles einbinden. (Quasi modernere Dialoge als wie in SA-MP) Hab ich schon auf 2-3 Gameservern gesehen

-
Es geht aber auch darum wie ich es im GTA Multiplayer anzeigen lassen kann und den Inhalt der Inputs sowie die Klicks auf die Buttons zu verwalten
-
-> Callback <-
public OnVehicleRespray(playerid, vehicleid, color1, color2)
{
//-> Geld abziehen! <-\\
return 1;
}Grüße

-
Tag, hätte mal eine Frage auf das Thema Javascript und CSS bezogen
Beispielsweise, ich möchte ein Login & Register Fenster einbauen, ein schön gestaltetes Fenster, basiert auf JS & CSS. (und html)
Wie geh ich da am besten vor ?
-
-
Daran wird es nicht liegen, habe versucht mir eine Nachricht ausgeben zu lassen um genau das zu Testen.
Er erkennt nicht einmal, dass ich gerade geschossen habe beispielsweise.
Habs dann mit einer anderen Schleife probiert und einer anderen weise der Erkennung des Schusses probiert.-> CODE <-
//EDIT -> Ohne die Abfrage erstellt er Explosionen auf den gezielten Punkten.
-
Du könntest uns deinen Quellcode im Script dazu zeigen, dann könnte dir hier auch mehr geholfen werden.
-
@LuckyPatcher Das war von der Schleife.
Es funktioniert übrigens nicht ganz, hab zwar keine Fehler beim Compilen aber Ingame passiert nichts wenn ich schieße, aber ich weis dass das Callback oben aufgerufen wird.-> /explodegun <-
C
Alles anzeigen[Command("explodegun", "~r~SERVER: ~w~/explodegun [true/false]")] public void ExplodeGun(Client playerid, string state) { if(state == "on") { API.setEntityData(playerid, "expg", 1); return; } else if(state == "off") { API.setEntityData(playerid, "expg", 0); return; } else { API.sendChatMessageToPlayer(playerid, "Ungültige Auswahl!"); } }-> Update <-
C
Alles anzeigenpublic void OnUpdateHandler() { var players = API.getAllPlayers(); foreach (var p in players) { //Explodegun System if(API.isPlayerShooting(p) == true && API.getEntityData(p, "expg") == 1) { Vector3 Test = API.getPlayerAimingPoint(p); API.createExplosion((ExplosionType)5, Test, 15, 0); } if (p.exists == false) continue; if (p.isInVehicle == false) continue; if(p.vehicle.health < 300 && API.getEntityData(p, "ccar") == 1) { API.setEntityData(p, "ccar", 0); API.sendChatMessageToPlayer(p, "~r~SERVER: ~w~Dein Fahrzeug ist kaput gegangen!"); p.vehicle.delete(); } } } -
Kannst du mir mal den Code schicken den du dafür verwendest oder ist das exakt alles?
Die 2 Zeilen verursachen die Fehler, dass ist also quasi alles vom Code.
@DanRho Kein Problem, passiert.
Dankesehr, gibt mir keine Fehler mehr aus.
-
Hey, probiere dort eine Explosion zu erstellen wo hingeschossen wurde, habe dort aber ein kleines Problem mit Vector3.
-> Fehler <-
Code2017-07-27 18:07:54.5727 | Error | GameServer | Error/warning while compiling script! 2017-07-27 18:07:54.5727 | Error | GameServer | Error (CS1502) at c:\Users\Alex\Desktop\gtavmp server\resources\testsource\testsource.cs:45: Die beste Übereinstimmung für die überladene 'GrandTheftMultiplayer.Server.API.ServerAPI.createExplosion(GrandTheftMultiplayer.Server.Constant.ExplosionType, GrandTheftMultiplayer.Shared.Math.Vector3, float, int)'-Methode hat einige ungültige Argumente. 2017-07-27 18:07:54.5727 | Error | GameServer | Error (CS1503) at c:\Users\Alex\Desktop\gtavmp server\resources\testsource\testsource.cs:45: Argument '1': Konvertierung von 'int' in 'GrandTheftMultiplayer.Server.Constant.ExplosionType' nicht möglich.-> CODE <-
-
Bitte auf keinen Fall einen SELECT * ohne Bedingung auf die komplette Tabelle machen, das ist komplett am Sinn vorbei und überhaupt nicht performant! Wenn in der Datenbank 50.000 registrierte Spieler stehen, dann werden alle 50.000 Datensätze an den Server gesendet, das macht keinen Sinn.
Um nur die Anzahl der Datensätze zu erhalten, reicht es, wie Douq auch schon sagte, einen SELECT COUNT zu machen, damit bekommt man genau einen Datensatz mit einem Wert zurück, anstatt die komplette Tabelle.
Danke für die Korrektur, schon richtig was du schreibst, Jeffry

-
Tag leute, wollte mal fragen ob mir hier jemand weiterhelfen kann?
Ich wollte einen einfachen /vehicle Command erstellen, aber es wird kein Fahrzeug erstell, genauso wenig wird eine Nachricht ausgegeben dass bereits ein Fahrzeug erstellt wurde.C
Alles anzeigen[Command("vehicle", Alias="v")] public void CreatePrivateVehicle(Client sender, VehicleHash model) { var hasCar = API.getEntityData(sender, "ccar"); if (hasCar) { API.sendChatMessageToPlayer(sender, "~r~SERVER: ~w~Du hast bereits ein Fahrzeug erstellt."); return; } API.setEntityData(sender, "ccar", 1); Vector3 position = API.getEntityPosition(sender); Vehicle veh = API.createVehicle(model, new Vector3(sender.x, sender.y, sender.z), Vector3(0, 0, sender.rotation.Z), 0, 0); API.setPlayerIntoVehicle(sender, veh, -1); API.sendChatMessageToPlayer(sender, "~g~SERVER: ~w~Du hast dir ein Fahrzeug erstellt."); } -
new GetGuys = 0; //oben ins script
stock GetRegisteredGuy() //Zählen
{
mysql_pquery(dbhandle, "SELECT * FROM `accounts`", "@UpdateGuys", "");
return 1;
}
@UpdateGuys();
@UpdateGuys() //Updaten
{
cache_get_row_count(GetGuys);
return 1;
}Musst du halt noch auf deinen Code anpassen, nutzen lässt sich das ganze recht einfach.
ocmd:getregguys(playerid)
{
new string[64]; //string erstellen
GetRegisteredGuys(); //Accounts zählen lassen und in variable 'GetGuys' setzen
format(string, sizeof string, "Auf dem Server sind derzeit %d Spieler.", GetGuys), //String formatieren
SendClientMessage(playerid, -1, string); //Nachricht in weis ausgeben
return 1;
} -
Probiere dich doch mal daran zu orentieren was ich oben geschrieben hatte, zeig halt mal her wie du die Accounts speichern lässt. Quasi deine Speicherfunktion, Ladefunktion und Spielervariable.
-
Sieht ganz okay aus, aber finde die neuartigen selbstgemappten betretbaren Interiors, sollten jedoch viel mehr moderner gestaltet werden. 6/10
