Tjong du musst auch nur im FOrum um für MTA zu Werben... -.-
Beiträge von Tirus
-
-
damit : AddVehicleComponent(GetPlayerVehicleID(playerid),1010)
__________________________________________________________________________Problem mit Dynamischen Payday
Mein PAyday sollte eigentlich für jeden einzeln geben und zwar immer nach einer Stunde spielzeit das hab ich soweit auch hingekriegt allerdings habe ich ein Problem mit dem Timer
das ist der Timer:public pimer(playerid)
{
SendClientMessage(playerid,COLOR_WHITE,"tick tack");//<<<<<<<<< Zur veranschaulichung
PlayerInfo[playerid][pPlaytime] = PlayerInfo[playerid][pPlaytime]+1 ;if(PlayerInfo[playerid][pSincePayday] >= 60)
{
PlayerInfo[playerid][pSincePayday] = 0;
PayDay(playerid);
}
else
{
PlayerInfo[playerid][pSincePayday] = PlayerInfo[playerid][pSincePayday]+1;
}
return 1;
}und ingame habe ich jetzt das Problem hier: mit Tick TAck wird der ganze Chat (bis obenhin vllt. mehr) zugespammt
gestartet wird der Timer unter Onplayerlogin
pimerday[playerid] = SetTimerEx("pimer",6000,1,"i",playerid);
gekillt unter onplayerdisconnect
public OnPlayerDisconnect(playerid)
{
KillTimer(pimerday[playerid]);
........forward pimer(playerid);
new pimerday[MAX_PLAYERS]; -
ja steht im tut
du musst unter Onplayercommandtext noc hsowas in der art machen :
dcmd(su,2,cmdtext
aber mehr verrat ich nicht sonst lernst du ja gar nichts
-
bei mir hats net geklappt und bei nem Freund auch nicht also hab ich es richtig gemacht. So dass es bei mir ging und das Tut geschrieben jetzt geht s bei ihm auch.
Und das mit dem dcmd_su schaut euch mal dieses Tut an [ SCRIPTING ] Commands mit Parametern dort wird alels erklärt
-
Da es hier im Forum erst ein Tutorial gibt zum Wantedspeichern und dieses Fehlerhaft ist und bei den Meisten nicht funktioniert habe ich ein Neues gemacht
Als erstes suchen wir nach :
enum pInfo
und fügen dort über
pCrimes,
Wantedlvl,
ein dann sollte alles so aussehenenum pInfo
{
pKey[128],
pLevel,
pAdmin,
pDonateRank,
gPupgrade,
pConnectTime,
pReg,
pSex,
pAge,
pOrigin,
pCK,
pMuted,
pExp,
pCash,
pAccount,
Wantedlvl,//<<<<<<<<<<<<<<<<<<<<
pCrimes,
pKills,
pDeaths,
pArrested,
pWantedDeaths,
pPhoneBook,
pLottoNr,
pFishes,
pBiggestFish,
pJob,
pPayCheck,
pHeadValue,
pJailed,
.........DAnn unter
public OnPlayerConnect(playerid)
...............
PlayerInfo[playerid][pAge] = 0;
PlayerInfo[playerid][pOrigin] = 0;
PlayerInfo[playerid][pExp] = 0;
PlayerInfo[playerid][pAccount] = 0;
PlayerInfo[playerid][Wantedlvl] = 0;//<<<<<<<<<<<<<<<<< einfügen über pCrimes
PlayerInfo[playerid][pCrimes] = 0;
PlayerInfo[playerid][pDeaths] = 0;
PlayerInfo[playerid][pArrested] = 0;
PlayerInfo[playerid][pWantedDeaths] = 0;
...................Unter:
public OnPlayerRegister
.....................
format(var, 32, "Muted=%d\n",PlayerInfo[playerid][pMuted]);fwrite(hFile, var);
format(var, 32, "Respect=%d\n",PlayerInfo[playerid][pExp]);fwrite(hFile, var);
format(var, 32, "Money=%d\n",PlayerInfo[playerid][pCash]);fwrite(hFile, var);
format(var, 32, "Bank=%d\n",PlayerInfo[playerid][pAccount]);fwrite(hFile, var);
format(var, 32, "Wanteds=%d\n",PlayerInfo[playerid][Wantedlvl]);fwrite(hFile, var);//<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
format(var, 32, "Crimes=%d\n",PlayerInfo[playerid][pCrimes]);fwrite(hFile, var);
format(var, 32, "Kills=%d\n",PlayerInfo[playerid][pKills]);fwrite(hFile, var);
..................unter:
public OnPlayerUpdate
...............
format(var, 32, "Respect=%d\n",PlayerInfo[playerid][pExp]);fwrite(hFile, var);
format(var, 32, "Money=%d\n",PlayerInfo[playerid][pCash]);fwrite(hFile, var);
format(var, 32, "Bank=%d\n",PlayerInfo[playerid][pAccount]);fwrite(hFile, var);
format(var, 32, "Wanteds=%d\n",PlayerInfo[playerid][Wantedlvl]);fwrite(hFile, var);//<<<<<<<<<<<<<<<<<<<
format(var, 32, "Crimes=%d\n",PlayerInfo[playerid][pCrimes]);fwrite(hFile, var);
format(var, 32, "Kills=%d\n",PlayerInfo[playerid][pKills]);fwrite(hFile, var);
format(var, 32, "Deaths=%d\n",PlayerInfo[playerid][pDeaths]);fwrite(hFile, var);
format(var, 32, "Arrested=%d\n",PlayerInfo[playerid][pArrested]);fwrite(hFile, var);
..............Unter:
public OnPlayerLogin
if( strcmp( key , "Respect" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pExp] = strval( val ); }
if( strcmp( key , "Money" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pCash] = strval( val ); }
if( strcmp( key , "Bank" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pAccount] = strval( val ); }
if( strcmp( key , "Wanteds" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][Wantedlvl] = strval( val ); }//<<<<<<<<<<<<<<<<<<<<<<
SetPlayerWantedLevel(playerid,PlayerInfo[playerid][Wantedlvl]);//<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
if( strcmp( key , "Crimes" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pCrimes] = strval( val ); }
if( strcmp( key , "Kills" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pKills] = strval( val ); }
if( strcmp( key , "Deaths" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pDeaths] = strval( val ); }Das wars mit dem Speichern kommen wir nun zu dem /wanted und /Su Befehl
/suspect (Erfordert DCMD und Sscanf Grundkenntnisse)
dcmd_su(playerid,params[]) {
new
sGrund[128],
pID;
if(sscanf(params, "us",pID,sGrund)) {
return SendClientMessage(playerid,COLOR_RED,"Benutzung: /su [playerid] [grund]");
}
if(!IsPlayerConnected(pID)) {
return SendClientMessage(playerid,COLOR_RED,"Kein Spieler mit angegebener ID Online");
}
if(!IsACop (playerid))
{
return SendClientMessage(playerid,COLOR_RED,"Du bist kein COP");
}
if(IsACop (pID))
{
// return SendClientMessage(playerid,COLOR_RED,"Du kannst keine Cops anzeigen");
}
new
ThePlayer[MAX_PLAYER_NAME],
admin[MAX_PLAYER_NAME],
sumsg1[128],
sumsg2[128];GetPlayerName(playerid,admin,sizeof(admin));
GetPlayerName(pID,ThePlayer,sizeof(ThePlayer));
SetPlayerWantedLevel(pID,GetPlayerWantedLevel(pID)+1);
format(sumsg1,sizeof(sumsg1),"%s wurde von %s wegen %s angezeigt.",ThePlayer,admin,sGrund);
format(sumsg2,sizeof(sumsg2),"%s hat dich wegen %s angezeigt",admin,sGrund);
SendClientMessage(pID,COLOR_RED,sumsg2);
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsACop (i))
{
SendClientMessage(i,COLOR_YELLOW,sumsg1); // Sendet SUmsg1 an alle die unter IsACop definiert wurden
}
}
if(PlayerInfo[pID][Wantedlvl] == 0)
{
PlayerInfo[pID][Wantedlvl] = 1; //setzt das Wantedlvl aus dem Enum oben auf 1 wenn man davor 0 hatte Also 1 Wantedlvl beim Wiedereinloggen das ist sehr wichtig fürs speichern
}
else if(PlayerInfo[pID][Wantedlvl] == 1)
{
PlayerInfo[pID][Wantedlvl] = 2;
}
else if(PlayerInfo[pID][Wantedlvl] == 2)
{
PlayerInfo[pID][Wantedlvl] = 3;
}
else if(PlayerInfo[pID][Wantedlvl] == 3)
{
PlayerInfo[pID][Wantedlvl] = 4;
}
else if(PlayerInfo[pID][Wantedlvl] == 4)
{
PlayerInfo[pID][Wantedlvl] = 5;
}
else if(PlayerInfo[pID][Wantedlvl] == 5)
{
PlayerInfo[pID][Wantedlvl] = 6;
}
else if(PlayerInfo[pID][Wantedlvl] == 6)
{
PlayerInfo[pID][Wantedlvl] = 6;
}return 1;
}/wanted
if(strcmp(cmd, "/wanted", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(gTeam[playerid] == 2 || IsACop(playerid))
{
new x;
SendClientMessage(playerid, COLOR_GREEN, "Momentan Gesuchte:");
for(new i=0; i < MAX_PLAYERS; i++) {
if(IsPlayerConnected(i))
{
if(GetPlayerWantedLevel(i) >= 1)
{
GetPlayerName(i, giveplayer, sizeof(giveplayer));
format(string, sizeof(string), "%s%s: %d Wanteds", string,giveplayer,GetPlayerWantedLevel(i));
x++;
if(x > 3) {
SendClientMessage(playerid, COLOR_YELLOW, string);
x = 0;
format(string, sizeof(string), "");
} else {
format(string, sizeof(string), "%s, ", string);
}
}
}
}
if(x <= 3 && x > 0) {
string[strlen(string)-2] = '.';
SendClientMessage(playerid, COLOR_YELLOW, string);
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " You're not a Cop / FBI / National Guard !");
}
}//not connected
return 1;
} -
Dynamic willst du alels Zuspammen ?
Und Stas vllt. kansnt du ja die SUche darauf eingrenzen alles was über dme Ersten Error ist
-
Externer Inhalt www.youtube.comInhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.
-
habe den Befehl so wie beschrieben gemacht allerdings gewinnt man immer
public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp(cmdtext, "/zufall", true) == 0)//Befehl beginnt
{
new geld = random(100);
new zufall = random(2);//zufall wird erstellt und wird 1 oder 2 ausspucken
if(zufall == 1)//Wenn zufall 1 ist
{
SendClientMessage(playerid,0x33FF00FF,"Du hast gewonnen!");//Befehl der sagt das man gewonnen hat
GivePlayerMoney(playerid,geld);//Halt der Gewinn. Hier 1$
return 1;//Befehl Ende
}
else if(zufall == 2)//aber wenn zufall 2 ist
{
SendClientMessage(playerid,0xFF0000FF,"Du hast verloren!");//Nachricht das man verloren hat
GivePlayerMoney(playerid,-geld);//Halt abzug von Geld weil man verloren hat
return 1;//Befehl Ende
}
return 1;
}
return 0;
} -
ich würde dir empfehlen dass du dir aufgrund von TUts einen eigenen Stunt/freeroam SCript machst
-
du bennenst doch eifnach nur den Ordner um was sol ldenn das helfen ?
-
-
Endlic hncihtmehr das FS
-
-
hier ist ein alter Css Script von mir :
-
omg xD ist das dei nErnst ?
[HILFE] Suche ein Filterscript mit "info icon" hilfe
wenn du noch nichtmal ein "i" Pickup auf die reihe kriegst wie willst du dann eine nRL-Mode machen ?
-
new rand(3);switch(rand)
case 0: { // Route 1 }
case 1: { // Route 2 }
case 2: { // Route 3 }
case 3: { // Route 4 }so gehts doch auch das Defien ist überflüßig außer du benutzt MAX_ROUTEs noc hwo anders
-
ARMA 2 =
Flashpoint 2 =
Flashpoint 1 = -
omg ihr idioten anstatt ihm zu helfen hackt ihr auf der Rechtschreibung rum -.-
wenn du es korrigieren kannst, konntest du es auch lesen...zu 1. Suche in deinem Script nach dieser ZEile
DisableInteriorEnterExits();und entferne die dann sind alle eingänge da
Zu dem Wetter vllt. kannst du es ja machen mit
SetplayerWeather
und
GetPlayerVirtualworld
und nem
Timer -
habe ich auch gedacht mache ich aber nicht habe alles kontrolliert und sogar nochmal von nem Freund kontrollieren lassen
-
vielen dank meiens geht nun und ich weiß dass wiki wieder on ist.
aber egal was man macht man wird gebannt im Klassenauswahlmenü.
public antiwaffen(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
new waffen = GetPlayerWeapon(i);
if(waffen == 9 || waffen == 10 || waffen == 11 || waffen == 12 || waffen == 13 || waffen == 14 || waffen == 15 || waffen == 17 || waffen == 18 || waffen == 26 || waffen == 27 || waffen == 28 || waffen == 32 || waffen == 34 || waffen == 37 || waffen == 38 || waffen == 39 || waffen == 40 || waffen == 41 || waffen == 42 || waffen == 43 || waffen == 44 || waffen == 45 && !IsPlayerAdmin(playerid))
{
new pname[MAX_PLAYER_NAME];
new string[100];
GetPlayerName(playerid, pname, sizeof(pname));
format(string, sizeof(string), "-=[A.B.U.K.S.]=- %s wurde wegen WaffenHack gekickt!", pname);
SendClientMessageToAll(COLOR_RED, string);
Kick(i);
}
new Float:lebenleben,
Float:rustungleben;new leben = GetPlayerHealth(i,lebenleben);
new rustung = GetPlayerArmour(i,rustungleben);
else if(leben >= 101 || rustung >= 101 && !IsPlayerAdmin(playerid))
{new name[MAX_PLAYER_NAME];
new string2[100];GetPlayerName(playerid, name, sizeof(name));
format(string2, sizeof(string2), "-=[A.B.U.K.S.]=- %s wurde wegen Lebenhack gekickt!", name);
SendClientMessageToAll(COLOR_RED, string2);
Kick(i);
}
new RPG = GetPlayerWeapon(i);
else if(RPG == 36 && gTeam[playerid] == TEAM_Rusia || gTeam[playerid] == TEAM_Romania || gTeam[playerid] == TEAM_USA || gTeam[playerid] == TEAM_Germany )
{
new name1[MAX_PLAYER_NAME];
new string1[100];GetPlayerName(playerid, name1, sizeof(name1));
format(string1, sizeof(string1), "-=[A.B.U.K.S.]=- %s wurde wegen WaffenHack gekickt!", name1);
SendClientMessageToAll(COLOR_RED, string1);
Kick(i);
}
else{}
}
return 1;
}