Beiträge von barcelona
-
-
-
-
Moin
Ich habe ein "Harndrang" system erstellt. Alle paar minuten (zufällig) sinkt die Zahl, am anfang ist sie 10.
Wenn der Harndragng 1 ist, kann man /piss machen, es kommt die animation und die zahl wird wieder auf 10 gesetzt.
Macht man das nicht, und lässt es auf 0 sinken, macht man sich in die hose.
der /piss cmd sieht so aus:Code
Alles anzeigenif(strcmp(cmdtext,"/piss",true) == 0) { new harn = PlayerInfo[playerid][pHarn]; if(harn < 2){ if(!(IsPlayerInAnyVehicle(playerid))){ SetPlayerSpecialAction(playerid, SPECIAL_ACTION_PISSING); PlayerInfo[playerid][pHarn]=10; SendClientMessage(playerid,COLOR_WHITE,"Du hast deine Blase entleert"); }else{SendClientMessage(playerid,COLOR_RED,"Bitte nicht im Auto!");}} else{ SendClientMessage(playerid,COLOR_RED,"Dein Harndrang ist noch nicht hoch genug"); } return 1; }
Jetzt muss man aber ja nur 1 sekunde pissen. wie kann man das so machen, dass z.B. am anfag
TogglePlayerControllable(playerid,0);
kommt, dann 10 sekunden gewartet wird und danach wieder TogglePlayerControllable(playerid,1);
??
mfg -
Danke, aber dann guckt der typ sich plötzlich irgendwas in los santos an... er soll in das interior vom ammunation reingucken, das ist ja das problem...
EDIT so muss es aussehen:Code
Alles anzeigenif(strcmp(cmd,"/cctv",true)==0){ if(!(gTeam[playerid]==TEAM_cops||gTeam[playerid]==TEAM_copsLEADER)){SendClientMessage(playerid,COLOR_RED,"Du bist kein Cop");}else{ if(PlayerToPoint(2.0,playerid,232.94,75.72,1005.03)){ SetPlayerInterior(playerid,1); SetPlayerPos(playerid,192.45,-55.71,1.57); SetPlayerCameraPos(playerid, 288.74,-30.69,1004.0); SetPlayerCameraLookAt(playerid,295.89,-38.47,1001.51); SendClientMessage(playerid,COLOR_WHITE,"Du beobachtest nun das Ammunation");}}} if(strcmp(cmd,"/stopcctv",true)==0){ if(!(gTeam[playerid]==TEAM_cops||gTeam[playerid]==TEAM_copsLEADER)){SendClientMessage(playerid,COLOR_RED,"Du bist kein Cop");}else{ if(PlayerToPoint(3.0,playerid,192.45,-55.71,1.57)){ SetPlayerPos(playerid,232.94,75.72,1005.03); SetCameraBehindPlayer(playerid); SetPlayerInterior(playerid,6); }}}
-
Folgendes Problem: Ich möchte das Cops mit /cctv , wenn sie im Büro sind, Das Ammunation sehen können. Von INNEN! Das Problem ist, dass es ja kein SetCameraInterior oder so gibt.
So sieht das bis jetzt aus:Code
Alles anzeigenif(strcmp(cmd,"/cctv",true)==0){ if(!(gTeam[playerid]==TEAM_cops||gTeam[playerid]==TEAM_copsLEADER)){SendClientMessage(playerid,COLOR_RED,"Du bist kein Cop");}else{ if(PlayerToPoint(2.0,playerid,232.94,75.72,1005.03)){ SetPlayerInterior(playerid,1); SetPlayerCameraPos(playerid, 288.74,-30.69,1004.0); SetPlayerCameraLookAt(playerid,295.89,-38.47,1001.51); SendClientMessage(playerid,COLOR_WHITE,"Du beobachtest nun das Ammunation"); }}} if(strcmp(cmd,"/stopcctv",true)==0){ if(!(gTeam[playerid]==TEAM_cops||gTeam[playerid]==TEAM_copsLEADER)){SendClientMessage(playerid,COLOR_RED,"Du bist kein Cop");}else{ SetCameraBehindPlayer(playerid); SetPlayerInterior(playerid,6); }}
Geht nur nicht, da sieht man nur alles Blau. Pls help
mfg -
SetPlayerCameraPos(playerid,1187.6268,-949.1793,42.6634);
SetPlayerCameraLookAt(playerid,1207.3076,-913.2491,48.0625); -
Gott lass dich ein bisschen netter werden.
Habs inzwischen selbst hingekriegt. -
Moin,
ich verstehe das nicht. strtok,strget,usw, ich blicke das nicht mehr durch. Bisher hab ich einfach immer meinen /makeleader [id][teamid] cmd kopiert, der hat ja 2 parameter.
Das problem ist nur, der hat nur 2 zahlen. Bei /su[id][grund] hänge ich jetzt. Wie kann ich die parameter "auslesen"? Pls help.
mfg -
-
Jo danke =) jetzt gehts
Für die dies auch nehmen wollen:
new result[64];
sollte man wegmachen, sonst wird das ja 2 mal...erstellt?...oder wie das heisst.
Frage 1 ist damit gelöst.
Frage 2:Code
Alles anzeigenif(strcmp(cmdtext,"/members",true)==0){ if ((gTeam[playerid]==TEAM_cops) || (gTeam[playerid]==TEAM_copsLEADER)){ SendClientMessage(playerid,COLOR_WHITE,"_____Polizei_Blueberry_____"); for(new i = 0; i < MAX_PLAYERS; i++){ if(gTeam[i]==TEAM_cops){new rr[30]; new humm[MAX_PLAYER_NAME]; GetPlayerName(i,humm,sizeof(humm)); format(rr,sizeof(rr),"%s",humm); SendClientMessage(playerid,COLOR_WHITE,rr); }if(gTeam[i]==TEAM_copsLEADER){new rr[30]; new humm[MAX_PLAYER_NAME]; GetPlayerName(i,humm,sizeof(humm)); format(rr,sizeof(rr),"%s(Leader)",humm); SendClientMessage(playerid,COLOR_WHITE,rr);}}} //usw
funktioniert bei allen, nur nicht bei den Cops...da steht dann
(Leader)
(Leader)
(Leader)
(Leader)
(Leader)
(Leader)
(Leader)
usw, der ganze chat ist damit voll.Wieso? Versteh ich nicht...
Bei allen andern gehts, nur die gTeams sind ausgetauscht. -
-
-
-
-
2 Commands Funktionieren bei mir nicht richtig.
1. /me
Ich habe einen /me Befehl erstellt, aber das Problem ist, zB "/me heult" geht, weil es nur ein wort ist. "/me hat hunger" geht nicht mehr, da wird nur "* SpielerX hat" Angezeigt.
EDIT: gelöst, siehe weiter unten.2.Problem: /members geht bei allen fraktionen nur nicht bei den Cops
Code
Alles anzeigenif(strcmp(cmdtext,"/members",true)==0){ if ((gTeam[playerid]==TEAM_cops) || (gTeam[playerid]==TEAM_copsLEADER)){ SendClientMessage(playerid,COLOR_WHITE,"_____Polizei_Blueberry_____"); for(new i = 0; i < MAX_PLAYERS; i++){ if(gTeam[i]==TEAM_cops){new rr[30]; new humm[MAX_PLAYER_NAME]; GetPlayerName(i,humm,sizeof(humm)); format(rr,sizeof(rr),"%s",humm); SendClientMessage(playerid,COLOR_WHITE,rr); }if(gTeam[i]==TEAM_copsLEADER){new rr[30]; new humm[MAX_PLAYER_NAME]; GetPlayerName(i,humm,sizeof(humm)); format(rr,sizeof(rr),"%s(Leader)",humm); SendClientMessage(playerid,COLOR_WHITE,rr);}}} //usw
was mach ich falsch? mfg B. -
SO habs nun doch in enum pInfo geschrieben. Gelöst =)
-
Dankeschön =) Jetzt müsst ich nur noch wissen wie mach das speichert...Habe es Aus dem FS rauskopiert, sieht jetz so aus
Code
Alles anzeigen//OnPlayerDeath new oldlevel; new newlevel; oldlevel = GetPlayerWantedLevel(killerid); newlevel = oldlevel + 2; if(!(gTeam[killerid] == TEAM_cops||gTeam[killerid] == TEAM_copsLEADER)) { SetPlayerWantedLevel(killerid, newlevel); SendClientMessage(killerid, COLOR_RED,"_____Verbrechen_____"); new sack[256]; format(sack, sizeof(sack), "Mord an %s. Dein Wantedlevel ist %d", playerid,newlevel); SendClientMessage(killerid,COLOR_GOLD,sack);
-
Danke, aber ich möchte das FS definitiv behalten. Das Wantedlevel könnte einfach in einer anderen Datei gespeichert werden...
mfg -