das ersparrt natürlich einiges, danke nun bin ich auch schlauer geworden
also die textdraws oben einfach durch ein textdraw ersetzen.
das ersparrt natürlich einiges, danke nun bin ich auch schlauer geworden
also die textdraws oben einfach durch ein textdraw ersetzen.
ich wusste nicht das man einfach den text ändern kann..
hmm ich kenne mich bei textdraws net so gut aus, aber ich glaube du musst bei textdrawbackgroundcolor ein pawn farb code nehmen
bsp.:
text1 = TextDrawCreate(205.000000, 4.000000, "Forum: www.Fun4Life-Reallife.de");
TextDrawBackgroundColor(text1, 0xFF0000FF);
TextDrawFont(text1, 1);
TextDrawLetterSize(text1, 0.490000, 1.499999);
TextDrawColor(text1, 16777215);
TextDrawSetOutline(text1, 1);
TextDrawSetProportional(text1, 1);
TextDrawUseBox(text1, 1);
TextDrawBoxColor(text1, 0xFFFFFFFF);
TextDrawTextSize(text1, 417.000000, 50.000000);
text2 = TextDrawCreate(205.000000, 4.000000, "TS3: 178.162.186.148:9987");
TextDrawBackgroundColor(text2,0xFF0000FF);
TextDrawFont(text2, 1);
TextDrawLetterSize(text2, 0.490000, 1.499999);
TextDrawColor(text2, 16777215);
TextDrawSetOutline(text2, 1);
TextDrawSetProportional(text2, 1);
TextDrawUseBox(text2, 1);
TextDrawBoxColor(text2, 0xFFFFFFFF);
TextDrawTextSize(text2, 417.000000, 50.000000);
text3 = TextDrawCreate(205.000000, 4.000000, "Serverowner: Meister- und Powernuke");
TextDrawBackgroundColor(text3, 0xFF0000FF;
TextDrawFont(text3, 1);
TextDrawLetterSize(text3, 0.490000, 1.499999);
TextDrawColor(text3, 16777215);
TextDrawSetOutline(text3, 1);
TextDrawSetProportional(text3, 1);
TextDrawUseBox(text3, 1);
TextDrawBoxColor(text3, 0xFFFFFFFF);
TextDrawTextSize(text3, 417.000000, 50.000000);
und hier die publics, so müsste es richtig sein:
public textupdate1(playerid)
{
TextDrawHideForPlayer(playerid,Text:text1);
TextDrawHideForPlayer(playerid,Text:text3);
TextDrawShowForPlayer(playerid,text2);
SetTimerEx("textupdate2",30000,0,"i",playerid);
return 1;
}
public textupdate2(playerid)
{
TextDrawHideForPlayer(playerid,Text:text2);
TextDrawHideForPlayer(playerid,Text:text1);
TextDrawShowForPlayer(playerid,text2);
SetTimerEx("textupdate3",30000,0,"i",playerid);
return 1;
}
public textupdate3(playerid)
{
TextDrawHideForPlayer(playerid,Text:text2);
TextDrawHideForPlayer(playerid,Text:text3);
TextDrawShowForPlayer(playerid,text1);
SetTimerEx("textupdate1",30000,0,"i",playerid);
return 1;
}
//edit: überall wo du die farbe einstellst bei den textdraws, egal ob backgroun, textdrawbox, etc., musst du ein farbcode nehmen und keine zahl also 0xXXXXXXX
schon editiert, habe das gerade als filterscript geschrieben und habe vergessen das umzubenennen :D:D
so hier ist es, ich hoffe es klappt. ist ungetestet und eben so mal gemacht:
Oben unter den Includes:
new text1,text2,text3;
forward textupdate1(playerid);
forward textupdate2(playerid);
forward textupdate3(playerid);
Dann kommt das:
public OnGameModeInit()
{
text1 = TextDrawCreate(205.000000, 4.000000, "Forum: www.Fun4Life-Reallife.de");
TextDrawBackgroundColor(text1, 255);
TextDrawFont(text1, 1);
TextDrawLetterSize(text1, 0.490000, 1.499999);
TextDrawColor(text1, 16777215);
TextDrawSetOutline(text1, 1);
TextDrawSetProportional(text1, 1);
TextDrawUseBox(text1, 1);
TextDrawBoxColor(text1, 100);
TextDrawTextSize(text1, 417.000000, 50.000000);
text2 = TextDrawCreate(205.000000, 4.000000, "TS3: 178.162.186.148:9987");
TextDrawBackgroundColor(text2, 255);
TextDrawFont(text2, 1);
TextDrawLetterSize(text2, 0.490000, 1.499999);
TextDrawColor(text2, 16777215);
TextDrawSetOutline(text2, 1);
TextDrawSetProportional(text2, 1);
TextDrawUseBox(text2, 1);
TextDrawBoxColor(text2, 100);
TextDrawTextSize(text2, 417.000000, 50.000000);
text3 = TextDrawCreate(205.000000, 4.000000, "Serverowner: Meister- und Powernuke");
TextDrawBackgroundColor(text3, 255);
TextDrawFont(text3, 1);
TextDrawLetterSize(text3, 0.490000, 1.499999);
TextDrawColor(text3, 16777215);
TextDrawSetOutline(text3, 1);
TextDrawSetProportional(text3, 1);
TextDrawUseBox(text3, 1);
TextDrawBoxColor(text3, 100);
TextDrawTextSize(text3, 417.000000, 50.000000);
return 1;
}
public OnGameModeExit()
{
TextDrawDestroy(text1);
TextDrawDestroy(text2);
TextDrawDestroy(text3);
return 1;
}
public OnPlayerConnect(playerid)
{
TextDrawShowForPlayer(playerid,text1);
SetTimerEx("textupdate1",30000,0,"i",playerid);
return 1;
}
dann machste irgentwo, am besten ganz unten im script das hier noch rein:
public textupdate1(playerid)
{
TextDrawHideForPlayer(playerid,text1);
TextDrawHideForPlayer(playerid,text3);
TextDrawShowForPlayer(playerid,text2);
SetTimerEx("textupdate2",30000,0,"i",playerid);
return 1;
}
public textupdate2(playerid)
{
TextDrawHideForPlayer(playerid,text2);
TextDrawHideForPlayer(playerid,text1);
TextDrawShowForPlayer(playerid,text2);
SetTimerEx("textupdate3",30000,0,"i",playerid);
return 1;
}
public textupdate3(playerid)
{
TextDrawHideForPlayer(playerid,text2);
TextDrawHideForPlayer(playerid,text3);
TextDrawShowForPlayer(playerid,text1);
SetTimerEx("textupdate1",30000,0,"i",playerid);
return 1;
}
bitteschön, bei fehler oder sowas kannste mir bescheid sagen...
wenn du mir par minuten giebst, mache ich das, das muss man nämlich dann mit SetTimerEx machen wenn du das so willst.
ich versteh nicht wie du das meinst mit ins gesicht sehen.
erläuter das mal genauer oder zeig ein screen wie es aussehen soll von einem anderen server oder sowas..
öhh das habe ich gerade gemacht, doch du musst die textdraw zerstören, dazu brauchst du den textdrawnamen, deswegen new text1;
ich muss ja sagen welche textdraw zerstört werden soll, und dann wird eine neue textdraw erstellt. ganz einfach
okay du musst halt sehen wenn sich das zwischen den beiden wechsel soll, musste 2 publics machen, aber probier erstma, wennde das nicht hinkrist mach ich das ;D
ja meine ich, wenn das nicht hinkrist, bastel ich dir das eben..
du erstellst 2 news und ein forward oben im script:
new text1;
new text2;
forward testupdate();
und dann erstellst du damit ein textdraw:
text 1 = TextDraw...
und startest ein timer.. der sich immer wiederholen soll:
SetTimer("textupdate",ZEIT,1);
und dann amchste ein public der aktiviert wird sobald die zeit vom timer abgelaufen ist:
public textupdate()
{
TextDrawDestroy(text1);
text2 = CreateTextDraw....
return 1;
}
ich habe mir mit sobeit geld gecheatet und es wurde mir nicht abgenommen..
okay danke schön. wie kann ich des testen? mit einem moneyhack trainer? der einen 9999999999 $ giebt?
wie kann das sein das kein OnGameModeInit giebt? das muss eigentlich vorhanden sein.
alles kla machen wir, ist in 5 minuten fertig..
so einfach ist das nicht! du verlangst hier was wofür man einige zeit braucht, und es wird dir 100% keiner machen ohne eine gegenleistung zu bekommen, und damit meine ich nicht adminlvl.
da habe ich mal eine frage. ich habe befehle wie /pay id betrag oder /setmoney id betrag. werden die automatisch berücksichigt?
nicht das wenn einer /pay 0 50000 macht, ihm dann das geld weggenommen wird, bei /setmoney wäre es net ganz so schlimm weil es ein admcmd ist.
mfg
danke, es klappt alles
Guten Tag. Ich habe versucht, per Befehl Alle autos respawnen zu lassen, die nicht in benutzung sind. Doch irgentwie ist es etwas buggy und es werden alle Autos respawnt.
Hier mein script:
#define CAR_AMOUNT 100
//unter OnPlayerCMDText
if(strcmp(cmdtext, "/vspawn", true)==0)
{
if(SpielerInfo[playerid][alvl] >= 1)
{
SendClientMessageToAll(türkis,"In 60 Sekunden werden alle Autos respawnt!");
SetTimer("vspawn1",50000,0);
}
}
return 1;
}
public vspawn1()
{
SendClientMessageToAll(türkis,"In 10 Sekunden werden alle Autos respawnt!");
SetTimer("vspawn2",10000,0);
return 1;
}
public vspawn2()
{
for(new vehicleid = 0; vehicleid < CAR_AMOUNT; vehicleid ++)
{
for(new playerid = 0;playerid< MAX_PLAYERS; playerid ++)
{
if(!IsPlayerInVehicle(playerid,vehicleid))
{
SetVehicleToRespawn(vehicleid);
}
}
}
return 1;
}
könntet ihr mir da helfen?
okay und wie frage ich das dann mit .ini ab ? also ich poste eben den teil mit ini.
ihr könnt es anhand eines commands zeigen zum beispiel: /farbe und die farbe wird in ini gespeichert.
hier mein ini:
enum SInfo
{
Passwort[256],
alvl,
Tode,
Kills,
Score,
Warning,
Dutysperre,
Banned,
Reason[256],
IP[128]
}
new SpielerInfo[MAX_PLAYERS][SInfo];
public SpielerUpdate(playerid)
{
new Spielerdatei[256];
new SpielerName[MAX_PLAYER_NAME];
GetPlayerName(playerid,SpielerName,sizeof(SpielerName));
format(Spielerdatei,sizeof(Spielerdatei),"/Simon/%s.ini",SpielerName);
dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
dini_IntSet(Spielerdatei,"Wanteds",GetPlayerWantedLevel(playerid));
dini_IntSet(Spielerdatei,"AdminLevel",SpielerInfo[playerid][alvl]);
dini_IntSet(Spielerdatei,"Tode",SpielerInfo[playerid][Tode]);
dini_IntSet(Spielerdatei,"Kills",SpielerInfo[playerid][Kills]);
dini_IntSet(Spielerdatei,"Score",GetPlayerScore(playerid));
dini_IntSet(Spielerdatei,"Warning",SpielerInfo[playerid][Warning]);
dini_IntSet(Spielerdatei,"Dutysperre",SpielerInfo[playerid][Dutysperre]);
new plrIP[16];
GetPlayerIp(playerid, plrIP, sizeof(plrIP));
dini_Set(Spielerdatei,"IP",plrIP);
return 1;
}
also sobald er zum beispiel ein scorepunkt dazu bekommt, wird die funktion SpielerUpdate gestartet. das selbe soll nun passieren wenn er sich ausloggt. die farbe soll abgefragt werden und in der .ini eingetragen werden. den rest kann ich selber
GUten Tag
wollte mal gerne wissen ob man abfragen kann wie die autofarbe ist? ich habe bisher nur ChangeVehicleColor gesehen.
Ich will nämlich gerne die aktuellen autofarben in der .ini speichern , dazu muss ich sie aber abfragen.