wieso sollte ich überall "new string/strink[64(oder so)];" anstatt gleich festzulegen (oben) "new strink[64];" er heist strink weil ich ihn strink genannt hab fertig kann ihn auch lol nennen wen ich wöllte macht das ein unterschied außerdem gabs mal ein Prob. mit string da es immer sagte das es doppelt definiert sei also hab ich den einfach strink genannt (Fehler ist inzwischen behoben strink ist trd. geblieben)... ich weiß ja nicht wieso ich in jeden befehl strnk definieren soll wen er immer gleich ist
Beiträge von bad_company
In 10 Minuten startet der nächtliche Backupvorgang! Es kann währenddessen (ca. 10 Minuten) zu Einschränkungen bei der Nutzung des Forums kommen
Weitere Infos findet ihr im Thema Backup des Forums
-
-
werde es testen
wundert mich nicht das man das nicht versteht
pplayerid ist bei mir eine globale variable die in jeden puplic aufgerufen werden kann wollte nich überall "new pplayerid;" hinschreiben...
(bis jetz auch immer funktionstüchtig ^^)strink ebenfalls global festgelegt wie groß er ist...
name[playerid/pplayerid]
einfach beim connecten den namen nehmen und speichern um nich so viel schreiben zu müssen ...wie gesagt werde es testen :D..
-
Also es sieht ihn als näheste Person an deswegen tazed er sich wie kann ich es machen das er sich nicht selber "wahrnimmt" ??
Befehl:
dcmd_tazer(playerid,params[])
{
#pragma unused params
if(pInfo[playerid][team] == 1)
{
if(IsPlayerInAnyVehicle(playerid))
{
return SendClientMessage(playerid, COLOR_GREY, "Du kannst in einem Fahrzeug nicht tazern!");
}
if(IsPlayerConnected(pplayerid))
{
if(tazed[pplayerid] == 1)
{
return SendClientMessage(playerid, COLOR_GREY, "Dieser Spieler ist schon getazert!");
}
if(GetDistanceBetweenPlayers(playerid,pplayerid) < 5)
{
if(pInfo[pplayerid][team] == 1)
{
return SendClientMessage(playerid, COLOR_GREY, "Du kannst keinen Polizisten tazern!");
}
if(IsPlayerInAnyVehicle(pplayerid))
{
return SendClientMessage(playerid, COLOR_GREY, "Dieser Spieler ist in einem Fahrzeug!");
}
format(strink, sizeof(strink), "*Du wurdest von %s mit seinem Elektroschocker für 10 Sekunden geschockt.", name[playerid]);
SendClientMessage(pplayerid, COLOR_LIGHTBLUE, strink);
format(strink, sizeof(strink), "*Du hast %s für 8 Sekunden niedergestreckt.", name[pplayerid]);
SendClientMessage(playerid, COLOR_LIGHTBLUE, strink);
format(strink, sizeof(strink), "*%s nimmt seinen Elektroschocker raus und tazert %s.", name[playerid] ,name[pplayerid]);
GameTextForPlayer(pplayerid, "~r~Tazed!", 2500, 3);
TogglePlayerControllable(pplayerid, 0);
tazed[pplayerid] = 1;
SetTimerEx("untazed",10000,0,"i",pplayerid);
}
else
{
return SendClientMessage(playerid, COLOR_GREY, "Niemand ist in deiner Nähe!");
}
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, "Du bist kein Polizist!");
}
return 1;
} -
Klar geht das ihr müsstet es nur richtig raus nehmen
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if((newkeys==KEY_ACTION)&&(IsPlayerInAnyVehicle(playerid))&&(GetPlayerState(playerid)==PLAYER_STATE_DRIVER))
{
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 525)
{
SendClientMessage(playerid,0xFFFF00AA,"Du Versuchst ein Auto Abzuschleppen");
new Float:pX,Float:pY,Float:pZ;
GetPlayerPos(playerid,pX,pY,pZ);
new Float:vX,Float:vY,Float:vZ;
new Found=0;
new vid=0;
while((vid<MAX_VEHICLES)&&(!Found))
{
vid++;
GetVehiclePos(vid,vX,vY,vZ);
if((floatabs(pX-vX)<7.0)&&(floatabs(pY-vY)<7.0)&&(floatabs(pZ-vZ)<7.0)&&(vid!=GetPlayerVehicleID(playerid)))
{
Found=1;
if(IsTrailerAttachedToVehicle(GetPlayerVehicleID(playerid)))
{
DetachTrailerFromVehicle(GetPlayerVehicleID(playerid));
}
AttachTrailerToVehicle(vid,GetPlayerVehicleID(playerid));
SendClientMessage(playerid,0xFFFF00AA,"Abgeschleppt!");
}
}
if(!Found)
{
SendClientMessage(playerid,0xFFFF00AA,"Kein Auto in der Nähe.");
}
}
}
}//EDIT: sry für die miese einrückung aber das machts bei mir von selbst -.-
//EDIT²: Hier musste in einem Abschlepper sitzen und "Strg" drücken.. -
Sicher kennen viele das Thema weil es auch in der SuFu oft zu finden war doch finde ich immer nur:
OnVehicleDeath...
und da runter logischer weise:
DestroyVehicle...Doch ich habe es versucht und es ging nicht o.0
Weiß einer hilfe ??mfg bad_company
//EDIT: fix nen schreibfehler rausgehaun
-
hää raff ich net "strand map" das ist ein loser stek im wasser weiß nicht was das bringen sollte...
1/10 -
Tja wenn es ein Copyright hat ist das dan nicht bisschen komisch xD musste das ja mit reinkopieren vllt greift das fs noch auf andere bestummte includes oder sonstiges zu was dein GM nicht macht ... Lass es doch lieber als FS
-
Sry ich kenn micht mit deinem System und deren native nicht aus...
-
Zitat
number of arguments does not match definition
heißt nur Anzahl der argumente/parameter ist falsch (zu viele oder zu wenig)
tipp hier:
(line,haus_index,','));
alles was mit" , " getrennt ist ist ein parameter... -
wen da steht tippe /enter und /exit dan ist das ein Filterscript ich klaube das ist "gl_property" geh in deine "Server.CFG" und dan mach "gl_property" hinter "filterscripts" weg dan sollten es weg sein wenn du nicht die meintest dan weiß ich auch nicht weiter...
mfg bad_company
-
interrior und world sind was anderes so weit ich weiß
man kann jemanden in interrior 1 setzen und world 0 dann is das normal
man kann aber auch jemanden in interror 1 setzen und in world 1 sie wären selber interrior aber könnten sich nicht sehen da sie in der anderen world sindinterrior = ein haus z.B: SFPD oder so wenn du den interrior setzt is der da
world = einfach eine andere world auf der selben mapAber das mit dem Speichern und ausgeben dürfte doch so stimmen wie ich das sehe...
//EDIT: Lass es dir ausgeben und schau was passiert dan siehste obs saved:
public OnPlayerDeath(playerid, killerid, reason)
{
new TOTstring[64];
SendClientMessage(playerid,0xFF9190FF,"Du bist schwerverletzt, rufe mit /service einen Notarzt!");
GetPlayerPos(playerid,Spieler[playerid][posx],Spieler[playerid][posy],Spieler[playerid][posz]);
Spieler[playerid][interior] = GetPlayerInterior(playerid);
Spieler[playerid][virtualw] = GetPlayerVirtualWorld(playerid);
Spieler[playerid][Verletzt] = 1;
format(TOTstring,sizeof TOTstring,"Du bist im Interior: %d und in World: %d gestorben!",Spieler[playerid][interior],Spieler[playerid][virtualw]);
SendClientMessage(playerid,0xFF9190FF,TOTstring);
return 1;
}
dasn schauste obs stimmt dan weißte das es saved -
Achja tipp mach das:
[...]
dcmd(giverank,8,cmdtext);
dcmd(register,8,cmdtext);
dcmd(login,5,cmdtext);
SendClientMessage(playerid, COLOR_RED, "*::* Unbekannter Befehl *::*");
return 1;
}
zu:
[...]
dcmd(giverank,8,cmdtext);
dcmd(register,8,cmdtext);
dcmd(login,5,cmdtext);
return SendClientMessage(playerid, COLOR_RED, "*::* Unbekannter Befehl *::*");
}
Sonst schreibt es doch immer bei jedem befehl auch wenn er richtig ist "*::* Unbekannter Befehl *::*" -
if(strcmp(cmdtext,"/hitbase",true)==0)//hier kp sry ich benutz nur dcmd ^^
{
MoveObject(tGate,1411.0688476563, -1891.7446289063, 12.772193908691,2.0);
SetTimer("GateClosetGate",5000,0);
return 1;
}
so isses doch richtig(dachte ich) ist das so schwer ??//EDIT so wie ich das sehe haste sowieso dcmd da mach ich dir das mal so:
oben zu den anderen:
dcmd(hitbase,7,cmdtext);
und da wo das alte steht das rein:
dcmd_hitbase(playerid,params[])
{
#pragma unused params
MoveObject(tGate,1411.0688476563, -1891.7446289063, 12.772193908691,2.0);
SetTimer("GateClosetGate",5000,0);
return 1;
} -
ich hab auch son problem bei meiner tank anzeige
hab einmal {vehicle heal(da hab ich sone striche gemacht"------")} und {tank kmh und motor}
aber wen ich am script rumschreibe ist es manchmal so das es stat tank die heal zeigt kp wieso und wen ich dan mal wieder was anderes schreibe gehts wieder komisch oder ??
-
Danke habs hinbekommen
enum
{
mietcarid
}und dann cInfo[playerid][mietcarid] = CreateVehicle(...)
bei dis. saven dan destroyen und bei con. wieder cInfo[playerid][mietcarid] = CreateVehicle(...) funzt perfekt
auch das GetVehiclePos(cInfo[playerid][mietcarid],...)... gehthab nur eine frage ich hab das mit unter die Spieler Ordner gehaun aber will nen eigen Ordner für Cars wie mach ich des dann ?
mfg bad_company
//EDIT: kleine ausbesserungen
-
Zitat
HatSimkarte[playerid] = 1;
format(string, sizeof(string), "Du hast erfolgreich eine Simkarte gekauft! Deine Handynummer: %i", hn);
SendClientMessage(playerid, COLOR_WHITE, string);
dini_IntSet(save, "Handynummer", handynummer[playerid]);Ich hab mal nen skin nach random auswählen lassen alles ging doch dan hab ich versucht es sofort zu saven und hab wie du direkt drunter geschrieben dini_IntSet(...); als ich es dan getestet hab hat er nichtmal nen skin bekommen ... vllt hilft es dir ... lass es mal nicht in die ini speichern und las sie dir ausgeben..
-
mh aber wenn eich es bei exit mache und es geklaut wird isses da wo er ausgestiegen ist beim nächsten connecten oder relog. 2. prob wie mach ich ne variable für die carid für jeden player ?? kannst du mal bsp. machen ?? ich hatte versucht die carid = dem namen des players zu machen aber hat irgendwie net gefunzt
-
So ich will ein autosys. scripten ich hab die enum namen ini.s ...
doch ich weiß nicht wie ich es ohne /parken mache hatte es so vor das man das beim Disconnect speichert aber nun weiß ich nicht wie ich die Pos rausfinden soll weil um die VehicleID rauszufinden muss je Spieler drinn sein und dan GetPlayerVehicleID(..)... oder geht das auch ohne player ?? und wie ?? -
wieso ist MTA doof ?? o.0 1000x besser als allles /save zu machen XD ne ernsthaft MTA funzt auf jeden ..
-
mapp die doch geht leichter z.B: mit MTA mapeditor (weis jetz grad net wo man den downloaden kann eifach googlen)
und converten und einfügen hier mal ein converter: DAAAAA :Dmfg bad_company