Also was es schon drine? Hinter das Plus die gewünschte Summe?
Andere Frage, denke auch die letzte wen das geklärt ist.
gangzone = SetTimer("AttackGangZone", 1000,1);
Also 1 Sekunde die Einnahme Zeit?
Beiträge von Sergej
-
-
forward GangWarEnd(playerid, gangzoneid);
public GangWarEnd(playerid, gangzoneid)
{
if(GangZoneInfo[gangzoneid][zGang] == 5)
{
GangZones[0]--;
}
if(GangZoneInfo[gangzoneid][zGang] == 6)
{
GangZones[1]--;
}
if(GangZoneInfo[gangzoneid][zGang] == 12)
{
GangZones[2]--;
}
if(GangZoneInfo[gangzoneid][zGang] == 13)
{
GangZones[3]--;
}
GangZoneInfo[gangzoneid][zGang] = GetPlayerGang(playerid);
new gangstring[60];
if(PlayerInfo[playerid][pMember] == 5 || PlayerInfo[playerid][pLeader] == 5)
{
format(gangstring, sizeof(gangstring), "La Cosa Nostra");
GangZones[0] ++;
}
if(PlayerInfo[playerid][pMember] == 6 || PlayerInfo[playerid][pLeader] == 6)
{
format(gangstring, sizeof(gangstring), "Ballas");
GangZones[1] ++;
}
if(PlayerInfo[playerid][pMember] == 12 || PlayerInfo[playerid][pLeader] == 12)
{
format(gangstring, sizeof(gangstring), "Grove Street Family");
GangZones[2] ++;
}
if(PlayerInfo[playerid][pMember] == 13 || PlayerInfo[playerid][pLeader] == 13)
{
format(gangstring, sizeof(gangstring), "Yakuza");
GangZones[3] ++;
}
strmid(GangZoneInfo[gangzoneid][zOwner], gangstring, 0, strlen(gangstring), 255);
UpdateGangZone(gangzoneid);
GangSafeInfo[GetPlayerGangSafeInfo(playerid)-1][sMoney] += GangZoneInfo[gangzoneid][zMoney];
for(new g = 0; g < MAX_PLAYERS; g++)
{
if(IsAMember(g))
{
new rtext[64];
if(PlayerInfo[playerid][pMember] == 5 || PlayerInfo[playerid][pLeader] == 5) { rtext = "L.C.N."; }
if(PlayerInfo[playerid][pMember] == 6 || PlayerInfo[playerid][pLeader] == 6) { rtext = "Ballas"; }
if(PlayerInfo[playerid][pMember] == 12 || PlayerInfo[playerid][pLeader] == 12) { rtext = "Grove Street Family"; }
if(PlayerInfo[playerid][pMember] == 13 || PlayerInfo[playerid][pLeader] == 13) { rtext = "Yakuza"; }
new string2[256];
format(string2, sizeof(string2), "~y~Gang Zone Nr. %d gehoert nun der ~r~%s", GangZoneInfo[gangzoneid][zID],rtext);
GameTextForPlayer(g, string2,5000, 4);
}
}
GangZoneStopFlashForAll(gangzoneid);
GangZoneInfo[gangzoneid][zOwned] = 1;
GangZoneInfo[gangzoneid][zAttackAgain] = 1;
OnGangZoneUpdate();
GangZoneWar = 0;
AttackedGangZone = 255;
GangZoneWait = 0;
GangZoneWaitTime = 0;
AttackerGang = 255;
DefenderGang = 255;
GangSafeInfo[GetPlayerGangSafeInfo(playerid)-1][sKills] = 0;
GangSafeInfo[GetPlayerGangSafeInfo(playerid)-1][sPoints] = 0;
KillTimer(gangzone);
SaveStuff();
Attackers = 0;
Defenders = 0;
MaxGangWarTime = 0;
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(Invade[i] != 255)
{
GangWarMember[i] = 0;
Invade[i] = 255;
SetPlayerVirtualWorld(i, 0);
GangWarDeath[i] = 0;
GangWarDeathTime[i] = 0;
SpawnPlayer(i);
}
if(GangWarMember[i] == 1)
{
GangWarMember[i] = 0;
Invade[i] = 255;
SetPlayerVirtualWorld(i, 0);
GangWarDeath[i] = 0;
GangWarDeathTime[i] = 0;
SpawnPlayer(i);
}
if(GangWarMember[i] == 2)
{
GangWarMember[i] = 0;
Invade[i] = 255;
SetPlayerVirtualWorld(i, 0);
GangWarDeath[i] = 0;
GangWarDeathTime[i] = 0;
SpawnPlayer(i);
}
else
{
GangWarMember[i] = 0;
Invade[i] = 255;
SetPlayerVirtualWorld(i, 0);
GangWarDeath[i] = 0;
GangWarDeathTime[i] = 0;
}
}
}
} -
if(GangZoneWait == 1)
{
if(GangZoneWaitTime <= 0)
{
GangZoneWait = 0;
GangZoneWaitTime = 0;
if(AcceptedGangWar == 1)
{
SendRadioMessage(AttackerGang, COLOR_LIGHTRED, "* Das GangWar hat gestartet.");
SendRadioMessage(DefenderGang, COLOR_LIGHTRED, "* Das GangWar hat gestartet.");
GangZoneWar = 1;
gangzone = SetTimer("AttackGangZone", 1000,1);
for(new player = 0; player < MAX_PLAYERS; player++)
{
if(IsPlayerConnected(player))
{
if(GangWarMember[player] == 1 || GangWarMember[player] == 2)
{
TogglePlayerControllable(player, 1);
TextDrawShowForPlayer(player, gkills[player]);
TextDrawShowForPlayer(player, gpoints[player]);
}
}
}
}
else
{
for(new a = 0; a < MAX_PLAYERS; a++)
{
if(IsPlayerConnected(a))
{
if(GangWarMember[a] == 1)
{
TogglePlayerControllable(a, 1);
GangWarEnd(a, Invade[a]);
}
}
}
}
}Ist das Richtig?Und ist das hier:
gangzone = SetTimer("AttackGangZone", 1000,1);
Also 1 Sekunde die Einnahme Zeit^^? -
Ich weis wie das geht Ich weis nur nicht wie das gesavet ist wen jemand gewinnt..
-
Ich weis jetzt nicht wo der Gewinn ist.
-
Kannst du das nicht in den Befehl einfügen und dan per Antwort einfügen?
Ich weis nicht wie ich hier die Zeilen einfüge, ich denke das geht nicht. oder? -
Hatte ich schon gemacht
Klappt nun gut, aber das mit dem Gewinn klappt nicht.
Falls du dem Befehl etwas entnehmen kannst und mir die stelle sagen kannst, dan wäre ich dir sehr verbunden. -
Habe ich ja Haut nie richtig hin.
Danke dir, es klappt mit /invade.
Nun bin ich aber am anfang gefreezt^^ -
Ich glaube ich habe es entdeckt
Falls du mir noch was beantworten kannst, wen der Angreifer das Gangwar gewinnt möchte ich das er 50k erhält.
Kriege es nicht hin. -
Welche davon? Weis ja nicht unter was es gespeichert ist, und welche abfrage es ist.
-
Wie meinst du das mit Gettime.
Es ist schon irgendwo im Script angegeben das man von 19 bis 20 Uhr ein Gangwar starten kann.
Nur in dieser einen Stunde. Wie kann ich das den ändern, ich will das man die Gebiete egal wann einnehmen kann. -
if(strcmp(cmd, "/invade", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(GangZoneWar == 0 && GangZoneWait == 0)
{
if(Invade[playerid] != 255)
{
SendClientMessage(playerid, COLOR_GRAD2, " Du bist bereits in einem GangWar.");
return 1;
}
if(IsAMember(playerid))
{
if(PlayerInfo[playerid][pJailed] == 0)
{
if(allowedgangwar[playerid] == 0)
{
new time[3];
gettime(time[0], time[1], time[2]);
FixHour(time[0]);
if(time[0] == 19 || time[0] == 17 || time[0] == 18)
{
for(new z = 0; z < sizeof(GangZoneInfo); z++)
{
if(PlayerInZone(playerid, GangZoneInfo[z][zMinX], GangZoneInfo[z][zMinY], GangZoneInfo[z][zMaxX], GangZoneInfo[z][zMaxY]))
{
if(GangZoneInfo[z][zAttackAgain] == 0)
{
if(GangZoneInfo[z][zGang] == 0)
{
FirstInvade = 1;
format(string, sizeof(string), " Du hast einen GangWar gestartet. Du greifst das Gebiet %s an.",GangZoneInfo[z][zZName]);
SendClientMessage(playerid, COLOR_LIGHTRED, string);
Invade[playerid] = z;
GangWarMember[playerid] = 1;
new frak;
if(IsALeader(playerid)) frak = PlayerInfo[playerid][pLeader];
else frak = PlayerInfo[playerid][pMember];
AttackerGang = frak;
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), " %s hat ein GangWar um das Gebiet: %s gestartet. Helfe ihm! (/accept war)", sendername, GangZoneInfo[z][zZName]);
SendRadioMessage(frak, COLOR_LIGHTRED, string);
AttackedGangZone = z;
GangZoneWait = 1;
GangZoneWaitTime = 180;
GangZoneFlashForAll(z, COLOR_RED2);
for(new s = 0; s < MAX_PLAYERS; s++)
{
if(IsPlayerConnected(s))
{
if(IsAMember(s))
{
new ftext[60];
if(frak == 5) ftext = "L.C.N.";
else if(frak == 6) ftext = "21st Street";
else if(frak == 12) ftext = "Groove Street";
else if(frak == 13) ftext = "Yakuza";
if(frak == 5 || frak == 13)
{
format(string, sizeof(string), " Die %s Mafia greift das Gebiet %s an. Verteidige es oder lass es! (/accept war)", ftext, GangZoneInfo[z][zZName]);
SendClientMessage(s, COLOR_LIGHTRED, string);
}
else if(frak == 6 || frak == 12)
{
format(string, sizeof(string), " Die %s Gang greift das Gebiet %s an. Verteidige es oder lass es! (/accept war)", ftext, GangZoneInfo[z][zZName]);
SendClientMessage(s, COLOR_LIGHTRED, string);
}
}
}
}
SetPlayerPos(playerid, GangZoneInfo[Invade[playerid]][zSpawn1X], GangZoneInfo[Invade[playerid]][zSpawn1Y],GangZoneInfo[Invade[playerid]][zSpawn1Z]);
SetPlayerVirtualWorld(playerid, 1);
SetPlayerInterior(playerid, 0);
TogglePlayerControllable(playerid, 0);
Attackers ++;
return 1;
}
else
{
if(GangZoneInfo[z][zGang] == GetPlayerGang(playerid))
{
SendClientMessage(playerid, COLOR_GRAD2, " Euch gehört dieses Gebiet !");
return 1;
}
else
{
new gangs;
for(new s = 0; s < MAX_PLAYERS; s++)
{
if(IsPlayerConnected(s))
{
if(PlayerInfo[s][pMember] == GangZoneInfo[z][zGang] || PlayerInfo[s][pLeader] == GangZoneInfo[z][zGang])
{
gangs ++;
}
}
}
if(gangs < 2)
{
SendClientMessage(playerid, COLOR_GRAD2, "Es sind keine 2 Member der feindlichen Gang Online.");
return 1;
}
new frak, enemyfrak;
for(new g = 0; g < MAX_PLAYERS; g++)
{
if(IsPlayerConnected(g))
{
if(PlayerInfo[g][pMember] == GangZoneInfo[z][zGang] || PlayerInfo[g][pLeader] == GangZoneInfo[z][zGang])
{
if(IsALeader(g)) enemyfrak = PlayerInfo[g][pLeader];
else enemyfrak = PlayerInfo[g][pMember];
DefenderGang = enemyfrak;
}
}
}
format(string,sizeof(string)," Euer Ganggebiet: %s wird angegriffen. Verteidige es ! (/accept war)", GangZoneInfo[z][zZName]);
SendRadioMessage(enemyfrak, COLOR_LIGHTRED, string);
format(string, sizeof(string), " Du hast einen GangWar gestartet. Du greifst das Gebiet %s an.",GangZoneInfo[z][zZName]);
SendClientMessage(playerid, COLOR_LIGHTRED, string);
Invade[playerid] = z;
GangWarMember[playerid] = 1;
if(IsALeader(playerid)) frak = PlayerInfo[playerid][pLeader];
else frak = PlayerInfo[playerid][pMember];
AttackerGang = frak;
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), " %s hat ein GangWar um das Gebiet: %s gestartet. Helfe ihm! (/accept war)", sendername, GangZoneInfo[z][zZName]);
SendRadioMessage(frak, COLOR_LIGHTRED, string);AttackedGangZone = z;
GangZoneWait = 1;
GangZoneWaitTime = 180;
GangZoneFlashForAll(z, COLOR_RED2);
SetPlayerPos(playerid, GangZoneInfo[Invade[playerid]][zSpawn1X], GangZoneInfo[Invade[playerid]][zSpawn1Y],GangZoneInfo[Invade[playerid]][zSpawn1Z]);
SetPlayerVirtualWorld(playerid, 1);
SetPlayerInterior(playerid, 0);
TogglePlayerControllable(playerid, 0);
Attackers ++;
return 1;
}
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD2, " Du kannst dieses Gebiet noch nicht einnehmen.");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD2, " Du bist in keinem Ganggebiet.");
}
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD2, " Du kannst nur zwischen 19 und 20 Uhr einen GangWar anfangen.");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD2, " Du darfst keinen GangWar führen.");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD2," Du kannst in deinem jetzigen Zustand keinen GangWar führen.");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD2, " Du bist in der falschen Fraktion.");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD2, " Es läuft bereits ein GangWar.");
return 1;
}
}// notconnected
return 1;
} -
Guten Tag,
Ich habe eine Frage.
Ich habe in meinem Script ein Gangwar System. Jedoch kann man ein Gangwar nur um 19 Uhr starten.
Wisst Ihr wie ich es ändern kann? Ihm Befehl konnte ich nichts erkennen.
Ingame um 03:00 Uhr: /invade : Du kannst nur zwischen 19 und 20 Uhr einen GangWar anfangen.Wäre nett wen mir einer helfen könnte.
//edit: Rechtschreibung.
-
Würdest du eventuell mal schreiben, was es enthalten soll etc.?
Google/SuFu gibt viele, brauchst kein Geld ausgeben. -
Würde mich auch interessieren.
-
Hey Jungs, es kennen sich bestimmt einige Damit aus.
Ich will nach einer erfolgreichen Zonen einnahme, das der Einnehmer dan 60k erhält.
Hier der Befehl, vielleicht kann In einer ja umschreiben. Wäre nett.Zitatif(strcmp(cmd,"/einnehmen",true) == 0)
{
if(!IsPlayerInAnyGang(playerid))
{
SendClientMessage(playerid,COLOR_RED,"Du bist in keiner Gang, die Gangzonen einnehmen darf!");
return 1;
}
new pgang = GetPlayerFrac(playerid);
new pzone = GetPlayerCurrentZone(playerid);
if(pzone == -1)
{
SendClientMessage(playerid,COLOR_RED,"Du bist in keiner einnehmbaren Gangzone!");
return 1;
}
if(Zonen[pzone][Angreifer] != -1)
{
SendClientMessage(playerid,COLOR_RED,"Die Gangzone wird bereits angegriffen!");
return 1;
}
if(Zonen[pzone][CurrentOwner] == pgang)
{
SendClientMessage(playerid,COLOR_RED,"Diese Gangzone gehört bereits deine Gang!");
return 1;
}
Zonen[pzone][Angreifer] = pgang;
Zonen[pzone][AngriffsTimer] = SetTimerEx("OnAttackSuccess",320000,0,"d",pzone);
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i) &&!IsPlayerNPC(i))
{
if(GetPlayerFrac(i) == Zonen[pzone][CurrentOwner])
{
SendClientMessage(i,COLOR_YELLOW," Eine Gangzone wird angegriffen. Wen du da bist mach /verteidigen.");
}
if(GetPlayerFrac(i) == Zonen[pzone][Angreifer])
{
SendClientMessage(i,COLOR_YELLOW," Deine Gang nimmt gerade ein Gebiet ein. Helfe Ihnen die Gegner zu Töten!");
}
}
}
SaveZones();
UpdateZones();
return 1;
}if(strcmp(cmd,"/verteidigen",true) == 0)
{
if(!IsPlayerInAnyGang(playerid))
{
SendClientMessage(playerid,COLOR_RED,"Du bist in keiner Gang, die Gangzonen einnehmen/verteidigen darf!");
return 1;
}
new pgang = GetPlayerFrac(playerid);
new pzone = GetPlayerCurrentZone(playerid);
if(pzone == -1)
{
SendClientMessage(playerid,COLOR_RED,"Du bist in keiner Gangzone!");
return 1;
}
if(Zonen[pzone][Angreifer] == -1)
{
SendClientMessage(playerid,COLOR_RED,"Die Gangzone wird gar nicht angegriffen!");
return 1;
}
if(Zonen[pzone][Angreifer] == pgang)
{
SendClientMessage(playerid,COLOR_RED,"Du gehörst nicht der Gang an, die diese Zone angreift!");
return 1;
}
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i) &&!IsPlayerNPC(i))
{
if(M_IsPlayerInZone(i,Zonen[pzone][CurrentOwner]) && Zonen[pzone][Angreifer] == pgang)
{
if(GetPlayerFrac(i) == Zonen[pzone][CurrentOwner])
{;
SendClientMessage(i,COLOR_YELLOW," Deine Gang hat die Zone erfolgreich verteidigt!");;
}
if(GetPlayerFrac(i) == Zonen[pzone][Angreifer])
{;
SendClientMessage(i,COLOR_YELLOW," Die Gangzone wurde erfolgreich verteidigt!");;
}
}
else return SendClientMessage(playerid,COLOR_RED,"Du kannst die Zone erst verteidigen wenn alle Angreifer ausgeschaltet wurden!");
}
}
Zonen[pzone][Angreifer] = -1;
M_ZoneStopFlashForAll(Zonen[pzone][MZonesID]);
KillTimer(Zonen[pzone][AngriffsTimer]);
UpdateZones();
return 1;
}Mit freundlichen Grüßen
//edit weis es keiner?
-
Bei deinem Script sollte auch das Klappen:
Zitatforward WantedLoss(playerid);
public WantedLoss(playerid)
{
if(IsPlayerConnected(playerid))
{
SetTimer("WantedLoss",1000*60*5,true);
new wanted = GetPlayerWantedLevel(playerid);
if(wanted>=1)
{
SetPlayerWantedLevel(playerid,wanted-1);
SendClientMessage(playerid,COLOR_RED,"Du hast ein Wanted verloren!"); // Um dem Spieler nochmal zu sagen was er eh gesehen hat !! Der schönheit halber !!
}
}
return 1;
}
Und das mit dem PayDay: Such mal im Script nachZitatwlevel-2);
-
Ou, tut mir leid habe nicht richtig nach geschaut.
Danke für die Hilfe. Darf ich dich per PN noch was Fragen, oder Skype? -
Sieht zwar gut aus aber, ich musste den Time so einbauen da er schon defindet ist.
Zitatpublic WantedLoss(playerid)
{
if(IsPlayerConnected(playerid))
{
SetTimer("WantedLoss",1000*60*5,true);
new wanted = GetPlayerWantedLevel(playerid)
if(wanted>=1)
{
SetPlayerWantedLevel(playerid,wanted-1);
SendClientMessage(playerid,COLOR_RED,"Du hast ein Wanted verloren!"); // Um dem Spieler nochmal zu sagen was er eh gesehen hat !! Der schönheit halber !!
}
}
return 1;
}(716) : error 001: expected token: ";", but found "if"
-
Guten Tag liebe Community,
Ich habe eine Frage, ich bin zurzeit am Scripten des Wanted Systems.
Wie kann ich einstellen, dass nach 5 Minuten 1 Wanted verschwindet.
Ich habe es zurzeit im PayDay: format(tmp,sizeof(tmp), "Aktuelles Wantedlevel: %i", wlevel-5);
Bitte um Hilfe, ich weis das ein Time eingebaut werden muss, habe mich damit nur noch nicht befasst.