Ja
wie kann ich das nutzen? Muss man das irgendwie compilen ?
Ja
wie kann ich das nutzen? Muss man das irgendwie compilen ?
Hi, arbeite gerade an einem Ping, FPS & Packetloss 3D Text System, doch es scheint nicht zu funktionieren ![]()
new PlayerText3D:pInfos[MAX_PLAYERS];
public OnPlayerUpdate(playerid) {
new drunknew;
drunknew = GetPlayerDrunkLevel(playerid);
if (drunknew < 100) {
SetPlayerDrunkLevel(playerid, 2000);
} else {
if (pDrunkLevelLast[playerid] != drunknew) {
new wfps = pDrunkLevelLast[playerid] - drunknew;
if ((wfps > 0) && (wfps < 200))
pFPS[playerid] = wfps;
pDrunkLevelLast[playerid] = drunknew;
}
}
new Float:hp;
GetPlayerHealth(playerid,hp);
if(IsAFK[playerid] == true && hp < 99.0) return SetPlayerHealth(playerid, 99.9);
new pInfosStr[90];
format(pInfosStr, sizeof pInfosStr, "{00DE00}Ping: {FFFFFF}%d\n{00DE00}FPS: {FFFFFF}%d\n{00DE00}PL: {FFFFFF}%0.2f", GetPlayerPing(playerid), pFPS[playerid], GetPlayerPacketLoss(playerid));
UpdatePlayer3DTextLabelText(playerid, pInfos[playerid], 0xFFFFFFFF, pInfosStr);
return 1;
}
Alles anzeigen
Da wo ich meine Accounts lade
/* Ping,FPS,PL Text */
new Float:pX,Float:pY,Float:pZ;
GetPlayerPos(id,pX,pY,pZ);
pInfos[id] = CreatePlayer3DTextLabel(id, "", -1, pX, pY, pZ-7, 15.0, id, INVALID_VEHICLE_ID, 0);
return 1;
Hoffe mir kann jemand helfen ![]()
Moin.
Ich habe eine Public Function und übergebe Variablen.
Diese Function wird via CallRemoteFunction aufgerufen, da der aufruf aus einem anderen Script kommt.
In der Public Function selbst wird erfolgreich der Wert wie es von mir gewünscht ist, in die Variable geschrieben (SendClientMessage Debugging)
Doch die Referenzen bleiben nicht bestehen. Ich bekomme nicht im anderen Script (dort wo der CallRemote herkommt) die abgeänderte Variable zurück.
PS: Es handelt sich um ein Array Object.
Referenzen sind mit CallRemoteFunction nicht möglich.
Du musst mit einer zweiten CallRemoteFunction die Daten wieder zurückschicken, so wie du sie her schickst.
Ergo zwei Publics?
Hmm... okay ![]()
Gibt es andernfalls eine andere Technik?
wie kann ich das nutzen? Muss man das irgendwie compilen ?
push :<
Ja, eines im einen Code, und eines im anderen Code, das die geänderten Daten in Empfang nimmt und dann die Variable entsprechend ändert, die du referenzieren wolltest.
Als Alternativen:
- Alles in einem Code haben.
- Über Dateien/Datenbank die Daten hin- und herschicken/übergeben (CallRemoteFunction dann nur als Event nutzen).
HI ![]()
wie kann ich ein/makeleaer Befehl machen, der einen invitet wenn man in der Fraktion 0 ist und wenn er es nicht ist soll er in diese gesetzt werden....und auch pSpawn auf 0 gesetzt werden ![]()
Gruß ![]()
Das kannst du ganz einfach mithilfe einer if-else Abfrage realisieren. Hast du denn bereits einen Anfang mit deinem "/makeleader"-Befehl? Falls nicht, dann versuche diesen erst einmal soweit aufzubauen, wie es dir möglich ist, und danach können wir dir dann immer noch weiterhelfen. Das bringt ja nichts, wenn wir dir den ganzen Code schon fertig schicken. ![]()
Frage^^
Wie wird eigentlich in SAMP die Velocity / Geschwindigkeit benutzt? Normalerweise wird die Geschwindigkeit mit Gesamtdistance / Zeit berechnet, jetzt stellt sich aber die Frage wie es in SAMP geregelt wird bzw wie die Zeitvariable heißt, brauche das für genaue Berechnungen ![]()
Standart geht so (in km/h):
X,Y und Z sind die Variablen von GetVehicleVelocity.
Math.sqrt bedeutet "QuadratWurzel ziehen"
speed = Math.sqrt(X*X+Y*Y+Z*Z)*136.666667;
Woher kommt jetzt diese Zahl: "136.666667"? Normalerweise (um mp/h) zu berechnen steht da glaube "100", dennoch, wozu multipliziert man bzw warum mit 100?
Hii,
ich wollte fragen wie ich die Camera beim Login und Register über die Map fliegen lassen kann?
Gruß
https://wiki.sa-mp.com/wiki/InterpolateCameraPos
https://wiki.sa-mp.com/wiki/InterpolateCameraLookAt
Dazu musst du aber noch SetPlayerPos aktualisieren (in der Nähe von der fliegenden Kamera), damit die Welt dort korrekt laden kann.
Außerdem kannst du für die Kamera dieses Filterscript verwenden. Schau es dir einfach mal an ![]()
http://forum.sa-mp.com/showthread.php?t=330879
https://wiki.sa-mp.com/wiki/InterpolateCameraPos
https://wiki.sa-mp.com/wiki/InterpolateCameraLookAt
Dazu musst du aber noch SetPlayerPos aktualisieren (in der Nähe von der fliegenden Kamera), damit die Welt dort korrekt laden kann.
Außerdem kannst du für die Kamera dieses Filterscript verwenden. Schau es dir einfach mal an![]()
http://forum.sa-mp.com/showthread.php?t=330879
Oder, statt den Spieler immer zu teleportieren, simplerweise mit folgender Funktion:
TogglePlayerSpectating(playerid, 1);
Moin
Ich bastel mir derzeitig eine eigene Bibliothek, um einfacher neue Scripte erstellen zu können sowie auch per STRG+Leertaste arbeiten zu können.
Allerdings sagt mir der Compiler, das meine gewünschte Funktion nicht vorhanden ist.
Mein Script sieht folgendermaßen aus:
#define lib_ User_
/*
native User_IsAdmin(PlayerID,rang);
*/
forward bool:lib_IsAdmin(p,r);
stock bool:lib_IsAdmin(p,r) return GetPVarInt(playerid,"Adminlevel")>=r;
#undef lib_
Alles anzeigen
Natürlich beinhaltet meine Bibliothek mehr. Und soll auf dauer wachsen.
Aber ich verstehe nicht die auftretende Fehlermeldung:
Warum kommt die Meldung? Ich kann es nicht nachvollziehen.
Es werden nur vollständige Anweisungen ersetzt, keine Teil-Übereinstimmungen.
So würde es klappen:
#define lib_IsAdmin User_IsAdmin
/*
native User_IsAdmin(PlayerID,rang);
*/
forward bool:lib_IsAdmin(p,r);
stock bool:lib_IsAdmin(p,r) return GetPVarInt(p,"Adminlevel")>=r;
#undef lib_IsAdmin
Aber dann kannst du es auch gleich ohne den Define machen.
Wo bist mein Fehler:
GetPlayerPos(playerid, pInfo[playerid][pSpawnX], pInfo[playerid][pSpawnY], pInfo[playerid][pSpawnZ]);
GetPlayerFacingAngle(playerid, pInfo[playerid][pSpawnR]);
Fehler:
C:\Users\marci\Desktop\City-of-Roleplay\gamemodes\CoR.pwn(146) : warning 213: tag mismatch
C:\Users\marci\Desktop\City-of-Roleplay\gamemodes\CoR.pwn(146) : warning 213: tag mismatch
C:\Users\marci\Desktop\City-of-Roleplay\gamemodes\CoR.pwn(146) : warning 213: tag mismatch
C:\Users\marci\Desktop\City-of-Roleplay\gamemodes\CoR.pwn(147) : warning 213: tag mismatch
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
Header size: 2492 bytes
Code size: 44284 bytes
Data size: 63904 bytes
Stack/heap size: 16384 bytes; estimated max. usage=2088 cells (8352 bytes)
Total requirements: 127064 bytes
4 Warnings.
Alles anzeigen
Musst du als Float defininieren.
Float:pSpawnX,pSpawnY,pSpawnZ
Float:pSpawnX,pSpawnY,pSpawnZ
Wenn dann so:
Float:pSpawnX,
Float:pSpawnY,
Float:pSpawnZ
Wie genau rechne ich das hier aus?
veh = GetPlayerVehicleID(playerid);
GetVehicleHealth(veh, vhealth);
--------------> kosten = 1000-vhealth*10;
Was ich genau damit bewirken will, ich möchte feststellen, wie viel Hp zu 1000 Hp fehlt und jeden Hp will ich dann mal den Wert 10 multiplizieren.
Einfach so:
kosten = (1000-vhealth)*10;