Hey Leute,
Wollte mal aus Fun ein Auto einem Spieler zuweisen:
habs mal so getestet aber bei mir kommt immer du bist nicht fiedel :(..
naja vllt wisst ihr mehr
if(IsPlayerConnected(playerid))
{
if (IsFiedelscar(vehicleid))
{
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
if(strcmp(name,"Fiedel_Kastro",true)==1) {
{
SendClientMessage(playerid, COLOR_GRAD1, "Willkommen in deinem Auto Fiedelschniedel.");
}
}
else
{
RemovePlayerFromVehicle(playerid);
SendClientMessage(playerid, COLOR_GRAD1, "Du bist nicht Fiedel");
}
}
return 1;
}
Beiträge von Fiedel
-
-
ich wette es liegt an deiner graka..weil der rest ist perfekt ^^..:D habe solche probleme nicht habe 4x3ghz prozesser und 4 x 2gb ram und natürlich wassergekühlt und ne schöne ati 4870 x2
-
hast du direcX drauf ?
Hast du mal pc neugestartet?
Hast du eine gescheite grafikkarte weil da kommt es am meisten drauf an -
Bei Commands kan man dan vorgaben machen die so aussehen:
if (PlayerInfo[playerid][pMember] == 1)
sprich wen er fraktionsid 1 ist kan er den command benutzen..
aber das mit deinem feuer ist noch nicht in samp0.2x möglich^^..(wegen der synkronation) -
sag mir ob du gf hast oder nicht.
weil im gf ist es total einfach..
im gf sieht es so aus :
if(strcmp(cmd, "/wisper", true) == 0 || strcmp(cmd, "/w", true) == 0)
{
if(IsPlayerConnected(playerid) && AWPlayerStatus[playerid] == 1 || PlayerInfo[playerid][pAdmin] >= 4)
{
if(gPlayerLogged[playerid] == 0)
{
SendClientMessage(playerid, COLOR_GREY, "Du musst dich erst einloggen!");
return 1;
}
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "FEHLER: (/w)isper [playerid] [text]");
return 1;
}
giveplayerid = ReturnUser(tmp);
if (IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
if(giveplayerid == playerid)
{
format(string, sizeof(string), "* %s redet mit sich selbst.", sendername);
ProxDetector(5.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
}
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "FEHLER: (/w)isper [playerid] [text]");
return 1;
}
format(string, sizeof(string), "%s mit der ID \"%d\" flüstert dir:", sendername, playerid);
SendClientMessage(giveplayerid, COLOR_YELLOW, string);
format(string, sizeof(string), "%s", result);
SendClientMessage(giveplayerid, COLOR_YELLOW, string);
format(string, sizeof(string), "Du hast %s mit der ID: \"%d\" etwas geflüstert.", giveplayer, giveplayerid);
SendClientMessage(playerid, COLOR_YELLOW, string);
SBizzInfo[2][sbTill] += txtcost / 2;
ExtortionSBiz(2, txtcost / 2);
return 1;
}
}
else
{
format(string, sizeof(string), " %d ist kein aktiver Spieler.", giveplayerid);
SendClientMessage(playerid, COLOR_GRAD1, string);
}
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "Flüstern wurde von den Admins deaktiviert");
}return 1;
}
(pm schicken können nur admins in dem Code den ich dir jetz geschickt habe) -
da fehlt noch viel mehr...
einmal musst du es definieren.. dan musst du den textdraw createn.. und dan in einem public mit timer setzt du du uhr / den tacho..
das brauche ich alles..Meine uhr sieht zum beispiel so aus:
definieren:
new Text:Time;
new Text:Date;
dan unter onplayerconnect damit angezeigt wird:
TextDrawShowForPlayer(playerid, Time);
TextDrawShowForPlayer(playerid, Date);dan wird unter ongamemodeinit der textdraw gecreatet:
Date = TextDrawCreate(547.000000,25.000000,"--");
Time = TextDrawCreate(523.000000,9.000000,"--");
TextDrawAlignment(Date,0);
TextDrawAlignment(Time,0);
TextDrawBackgroundColor(Date,0x000000ff);
TextDrawBackgroundColor(Time,0x000000ff);
TextDrawFont(Date,3);
TextDrawLetterSize(Date,0.399999,1.500000);
TextDrawFont(Time,0);
TextDrawLetterSize(Time,0.599999,1.400000);
TextDrawColor(Date,0xffffffff);
TextDrawColor(Time,0x00ff00cc);
TextDrawSetOutline(Date,1);
TextDrawSetOutline(Time,1);
TextDrawSetProportional(Date,1);
TextDrawSetProportional(Time,1);
TextDrawSetShadow(Date,1);
TextDrawSetShadow(Time,1);
Und dan in einem 1 Sekündigem abstand wird in einem public die zeit gesetzt:
public settime(playerid)
{
new string[256],year,month,day,hours,minutes,seconds;
getdate(year, month, day);
gettime(hours, minutes, seconds);
format(string, sizeof string, "%d/%s%d/%s%d", day, ((month < 10) ? ("0") : ("")), month, (year < 10) ? ("0") : (""), year);
TextDrawSetString(Date, string);
format(string, sizeof string, "%s%d:%s%d:%s%d", (hours < 10) ? ("0") : (""), hours, (minutes < 10) ? ("0") : (""), minutes, (seconds < 10) ? ("0") : (""), seconds);
TextDrawSetString(Time, string);
}
so das brauche ich von beidem.... -
ist doch im gf total simpel.. schau dir einfach an wie die franktionen von 1-wieviele du hast, gemacht sind und adde dan einfach ne neue mit skins chat und spawn.. fertig
-
unter
public OnPlayerConnect(playerid)
muss ieine vorgabe stehen..
damit du nichts falsch machst und dir nichts verlohren geht setzt das was du denkst so:
//testest das will ich nicht
mit // kannst du die Zeile unsichtbar machen die du aktuell nicht brauchst...
und so kommste bestimmt auch ohne unsere hilfe an dein Ziel -
Oben machste das hin:
forward PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z);
dan untern gm das hier:
public PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z)
{
if(IsPlayerConnected(playerid))
{
new Float:oldposx, Float:oldposy, Float:oldposz;
new Float:tempposx, Float:tempposy, Float:tempposz;
GetPlayerPos(playerid, oldposx, oldposy, oldposz);
tempposx = (oldposx -x);
tempposy = (oldposy -y);
tempposz = (oldposz -z);
//printf("DEBUG: X:%f Y:%f Z:%f",posx,posy,posz);
if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
{
return 1;
}
}
return 0;
} -
du musst schon mehr daten hierrein schreiben. so können wir dir nicht helfen
-
also um das ich dir helfen kann muss ich schon den kompletten tacho und die uhr haben...
ps: Hast du sie unterschiedich definiert ? -
machs so:
iwo ganz oben machste das hin:
new counter[MAX_PLAYERS]
unter OnPlayerDeath machste das hin:
counter[playerid] ++;
und dan willste bestimmt auch noch iwie das das angezeigt wird.. das kannste z.b. mit einem command machen:
Unter OnPlayerCommand machste das:
if(strcmp(cmd, "/checkdeath", true) == 0)
{
if(IsPlayerConnected(playerid))
{
new s[100];
format(s,sizeof(s),"Du wurdest schon %d gekillt",counter[playerid]);
SendClientMessage(playerid,COLOR_LIGHTBLUE,s);
}
return 1;
}
ist natürlich schnell geschrieben und nicht getestet -
-
-
-
-
mann kan es ganz problemlos mit einer call funktion machen
-
ne so gings nicht.. habe es aber jetz gelöst..
wer die lösung haben wil, einfach eine pm an mich -
genau so habe ich es auch.. schau gleich nur mal wo mein fehler liegt und ob deins geht <3..
danke
-
Hey leute, undzwa habe ich das anticheat: http://forum.sa-mp.com/index.php?topic=97253.0 und wollte mal fragen ob ihr wisst,
ob man ausnahmen machen kan das an bestimmten stellen GivePlayerMoney Funktioniert ?