Hallo!
Und zwar wollte ich fragen, wie man am besten so Prozessbar machen kann.
Die soll wie ein PlayerTextDraw wirken
50/100EXP = halbe balken ist voll!
mfg
Hallo!
Und zwar wollte ich fragen, wie man am besten so Prozessbar machen kann.
Die soll wie ein PlayerTextDraw wirken
50/100EXP = halbe balken ist voll!
mfg
Mit einem Callback...
cache_get_field_content_int & cache_get_field_content_float solltest du auch arbeiten!
mfg
if(GangSafeInfo[GetPlayerGangSafeInfo(playerid)][sMats] -= 400) return SendClientMessage(playerid, GRAU,"FEHLER: Deine Fraktion hat keine '400' Materialien mehr.");
zu
if(GangSafeInfo[GetPlayerGangSafeInfo(playerid)][sMats] < 400) return SendClientMessage(playerid, GRAU,"FEHLER: Deine Fraktion hat keine '400' Materialien mehr.");
mfg
Alles anzeigenJeffry:
Meinst du so?
enum PD
{
boolean pEingeloggt,
pGeld,
pLevel,
};
bool:pEingeloggt
mfg
Ja, ich habe es.
Einmal ist dort die r38 enthalten und die r39-2.
Ich würde dir zum aktuellem Zeitpunkt r39-2 empfehlen.
Die Funktionen heißen gleich.
mfg
ocmd:makeleader(playerid,params[]){
if(PlayerInfo[playerid][pAdmin] < 2)return SendClientMessage(playerid, rot, "Du bist kein Teammitglied.");
new pID,string[144], aname[MAX_PLAYER_NAME], frakid;
GetPlayerName(playerid,aname,sizeof(aname));
if(sscanf(params,"ui",pID,frakid))return SendClientMessage(playerid,rot,"[FEHLER]{FFFFFF} Benutze: /makeleader [Name/ID] [0-10]");
if(!IsPlayerConnected(pID))return SendClientMessage(playerid, -1, "Der Spieler ist nicht online!");
if(frakid < 0 || frakid > 10)return SendClientMessage(playerid, rot, "Der wert muss zwischen 0-10 liegen!");
format(string,sizeof string,"[INFO]{FFFFFF} Admin %s hat dich zum Leader der Fraktion %s ernannt!",aname,GetFrakName(frakid));
SendClientMessage(pID,rot,string);
PlayerInfo[pID][pFrak] = frakid;
}
stock GetFrakName(rang_y){
switch(rang_y){
case 0:return "Zivilist";
case 1:return "LSPD";
case 2:return "FBI";
default: return "ERROR";
}
return "ERROR";
}
Schau dir das mal an, ich habe es gerade mal fix für dich geschrieben! (Nicht getestet)
mfg
Zu leer.Gefällt mir gar nicht da hättest du auch einfach nur Zellen in eine Reihe stellen können.
Es ist ein "Admin" Prison.
Kein richtiger SAPD Interior mit Knast.
Danke für deine ehrliche Meinung!
mfg
Hey, dies ist eine Map die im XPR Skript ihren Platz gefunden hat.
Sie ist jetzt nicht wirklich ein Meisterwerk, da sie auch noch mal überarbeitet wird.
Aber ich dachte mir, da die meisten Leute nur Standard Knast Interiors nehmen, mache ich einen eigenen.
Objekte: 141 | Texturen : 0
Link für Handynutzer:
mfg
SetPVarInt(playerid,"pf.svr.act.tim",SetTimerEx("@kmcheck",1000,true,"d",playerid)); // Beim Prüfungsstart
@kmcheck(playerid);
@kmcheck(playerid){
if(Pruefung[playerid] == 1 && PruefungCP[playerid] == 1 && GetVehicleModel(GetPlayerVehicleID(playerid)) == 410 && IsPlayerInRangeOfPoint(playerid,4.0,1634.9910,-1147.7936,23.6333))
{
new kmh_anzahl=GetPlayerSpeed(playerid),kmh_max=61;
if(kmh_anzahl >= kmh_max)
{
PruefungFehler[playerid] +=1;
format(str,sizeof(str),"Bitte achte auf deine Geschwindigkeit! Fehler [%d/3]",PruefungFehler[playerid]);
SendClientMessage(playerid,ROT,str);
}
DisablePlayerCheckpoint(playerid);
PruefungCP[playerid] = 2;
return SetPlayerCheckpoint(playerid,1789.0580,-1175.8923,23.3792,4.0);
}
return KillTimer(GetPVarInt(playerid,"pf.svr.act.tim"));
}
stock GetPlayerSpeed(playerid)
{
new Float:pPos[4];
if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)GetVehicleVelocity(GetPlayerVehicleID(playerid), pPos[0], pPos[1], pPos[2]);
else if(GetPlayerState(playerid) == PLAYER_STATE_ONFOOT)GetPlayerVelocity(playerid, pPos[0], pPos[1], pPos[2]);
pPos[3] = floatsqroot(pPos[0] * pPos[0] + pPos[1] * pPos[1]);
return floatround(pPos[3] * 100 * 1.61);
}
Ich habe mir mal die Zeit genommen, und dir einen "hübschen" Quellcode bereitgestellt. (Gerade geschrieben, nicht getestet)
mfg
if(!strcmp(cmdtext,"/startbonus",true)){
if(GetPVarInt(playerid,"new.svr.stb.value"))return SendClientMessage(playerid, COLOR_RED, "FEHLER: {FFFFFF}Du hast deinen Startbonus bereits erhalten!");
new Float:max_distance = 2.0;
if(GetPlayerDistanceFromPoint(playerid,x,y,z)>max_distance)return SendClientMessage(playerid, COLOR_RED, "FEHLER: {FFFFFF}Du bist nicht am richtigen Ort!");
SendClientMessage(playerid, COLOR_GREEN, "STARTBONUS: {FFFFFF}Du hast deinen Startbonus erfolgreich eingelöst."),
SendClientMessage(playerid, COLOR_WHITE, "-> Geld(5.000$) <-");
GivePlayerMoney(playerid, 5000);
SetPVarInt(playerid,"new.svr.stb.value",true);
return 1;
}
Ich habe mir mal die Zeit genommen, und dir einen "hübschen" Quellcode bereitgestellt. (Gerade geschrieben, nicht getestet)
mfg
lord Gabe
Es geht darum, wenn jemand in diesem Fraktionsfahrzeug sitzt, darf es nicht respawnt werden!
mfg
wegen
Ach stimmt, ich lasse davor 4 Callbacks laden die von Querys abgeschossen wurden
Und ja das ist eine externe MySQL Verbindung, danke dass du mir auf die Sprünge geholfen hast.
mfg
if(value[2]<500) value[1]--;
else value[1] ++;
Zu
if(value[2]>=500) value[1]++;
Das else fällt ganz weg.
Super, dieser Code hatte also doch einen Sinn
Funktioniert nun wie gewollt, der Server gibt die Nachricht halt mit etwas Verzögerung aus.
Das kann ich nicht nachvollziehen! (Kannst du mir was dazu sagen, Jeffry)
"Betriebssystem: debian-7.0-amd64-minimal-xH
CPU: Intel Core i7 3770
RAM: 6 GB RAM
Dynram: 4GB
HDD: 50 GB HDD
Kerne: 3"
EDIT://
Bin mit meinem Homeserver online, dies vergaß ich!
CPU: Intel Core -5 3350p 4x3,4GHZ
Ram: 4GB
HDD: 1850 GB HDD
Kerne: 4
Grafikkarte: Nvida Gef0rce GTX 650
mfg
Hallo!
Ich möchte den Wert von GetTickCount aufrunden....
Das heißt z.b: 1200=1 Sekunde | 1501=2 Sekunden
Nur irgendwie scheint meine Rechnung nicht ganz aufzugehen!
new value[3];value[0]=GetTickCount()-GetPVarInt(playerid,"con.count.tick.value");
value[1]=value[0]/1000;
value[2]=value[0]-(value[1]*1000);
if(value[2]<500) value[1]--;
else value[1] ++;
format(string,sizeof string,"[Erfolgreich] {FFFFFF}Herzlich willkommen zurück %s. Du hast dich innerhalb %i Sekunde/n eingeloggt.",getPlayerName(playerid),value[1]);
SendClientMessage(playerid, COLOR_GREEN, string);
mfg
Liegt wahrscheinlich an deiner MySQL Version, war damals schon so... r34 ist nicht das beste
mfg
Treiber aktuell?
Startest du das Spiel mit einem kompatibilitätmodus ?
mfg
schau mal in die server.cfg ob dus dort eingetragen hast.
mfg
Probiere es doch einmal....wirklich schwer wird das nicht!
mfg
für was is das gut ?
muss man damit nicht mehr auf die hitbox treffen oder wie ?
Dann ist das wieder ähnlich der 0.3x Hitbox...
mfg