Angepinnt [SAMMELTHREAD] Kleine Scripting Fragen

  • Will einen Blitzer machen der auch Punkte und Bußgeld automatisch ausgibt aber wie genau berechnet man das z.b pro zu schnellen Km/h 100$ Bußgeld und alle 5Km/h 1 Punkt, also kann mir momentan nichts vorstellen wie ich anfangen kann Tutorials finde ich auch keine.

    Also habe angefangen so einen 50er Blitzer schon einmal zu machen aber irgendwie weiß ich nicht wie ich vorgehen soll das ist so falsch kriege auch errors wegen der Abfrage ob er in einem Auto ist was auch falsch gemacht war habe extra Fahrzeuge gemacht die Blitzbar sind:




    Blitzer:

    1633.10706, -1737.88904, 12.547
    1641.25098, -1726.88403, 12.547

    Quellcode

    1. stock Blitzbar(vehicleid)
    2. {
    3. switch(GetVehicleModel(vehicleid))
    4. {
    5. case 532,524,525,514,515,508,499,498,486,403,406,407,408,414,416,423,427,578,
    6. 573,428,431,432,433,437,455,456,544,609,549,546,547,545,540,541,542,543,
    7. 533,534,531,535,536,539,527,528,529,530,461,463,468,471,521,522,523,581,
    8. 500,518,502,503,504,505,506,507,489,490,491,492,494,495,496,482,483,485,
    9. 477,478,479,480,474,475,466,470,467,459,458,451,400,401,402,404,405,409,
    10. 410,411,412,413,415,418,419,420,421,422,424,426,429,434,436,438,439,440,
    11. 556,557,558,559,560,561,562,550,551,552,554,555,442,443,444,585,587,588,
    12. 580,582,583,579,575,576,574,445,565,566,567,568,571,572,589,596,597,598,
    13. 526,516,517,599,600,601,602,603,604,605,586: return 1;
    14. }
    15. return 0;
    16. }
    Alles anzeigen

    Quellcode

    1. forward Blitzer50();
    2. public Blitzer50()
    3. {
    4. for(new i=0; i<MAX_PLAYERS; i++)
    5. {
    6. if(!IsPlayerConnected(i) && !IsPlayerInAnyVehicle(i)) continue;
    7. for(new p; p < sizeof(sAuto); p++)
    8. {
    9. new vID=GetPlayerVehicleID(i);
    10. if(vID == sAuto[p] && pInfo[i][pAutoschein] == 1)
    11. {
    12. if(getPlayerSpeed(i) > 50)
    13. {
    14. GameTextForPlayer(i, "~y~!Geblitzt!", 500, 3);
    15. }
    16. }
    17. else
    18. {
    19. if(getPlayerSpeed(i) > 50)
    20. {
    21. GameTextForPlayer(i, "~y~!Geblitzt!", 500, 3);
    22. SendClientMessage(playerid,-1,"Da du keinen Führerschein mehr besitzt musst du erhöhtes Bußgeld zahlen.");
    23. }
    24. }
    25. }
    26. }
    27. return true;
    28. }
    Alles anzeigen
    EyL, German Roleplay. Opening 2019
    youtube.com/watch?v=MjWlICSj6Jo
  • Hay,

    Undzwar habe ich eine Frage...
    Beim VRL-Script kann man ein Gangfight nur in der Nähe von einer Flagge starten.... Ich wollte aber das Gangfight System ohne Flaggen nutzen und nur auf Kills basieren sowie, dass man ein Gangfight starten kann, sobald man in der Zone ist.
    Würde mir jemand helfen wie ich das einrichten kann?
    Code zu /gangfight ist ebenfalls angehangen.

    PAWN-Quellcode

    1. CMD:gangfight(playerid)
    2. {
    3. new string[128], gwzone = GetPlayerGangzone(playerid), gangs = 0;
    4. if(!IsGang(Spieler[playerid][pFraktion]))return SendClientMessage(playerid, COLOR_GREY, "Du gehörst keiner Gang/Mafia an.");
    5. if(Spieler[playerid][pRank] < 5)return SendClientMessage(playerid, COLOR_GREY, "Gangfights können erst ab Rang 5 gestartet werden.");
    6. if(IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid, COLOR_GREY, "Du darfst dich in keinem Fahrzeug befinden.");
    7. if(gwzone == -1)return SendClientMessage(playerid, COLOR_GREY, "Du befindest dich in keiner Gangfight Zone.");
    8. if(GangFight[gwzone][warOwner] == Spieler[playerid][pFraktion])return SendClientMessage(playerid, COLOR_GREY, "Dieses Gebiet gehört bereits deiner Fraktion.");
    9. if(GangFight[gwzone][warAttacker] == Spieler[playerid][pFraktion])return SendClientMessage(playerid, COLOR_GREY, "Deine Fraktion greift dieses Gebiet bereits an.");
    10. if(GangFight[gwzone][warTime] != 0 || GangFight[gwzone][warAttacker] != 0 ||GangFight[gwzone][warStarted] != 0)return SendClientMessage(playerid, COLOR_GREY, "Dieses Gebiet wird bereits umkämpft.");
    11. if(IsPlayerInRangeOfPoint(playerid, 5.0, GangFight[gwzone][warFlagX1], GangFight[gwzone][warFlagY1], GangFight[gwzone][warFlagZ1]) ||
    12. IsPlayerInRangeOfPoint(playerid, 5.0, GangFight[gwzone][warFlagX2], GangFight[gwzone][warFlagY2], GangFight[gwzone][warFlagZ2]))
    13. {
    14. if(GWisStarted4Fraktion[Spieler[playerid][pFraktion]] == 1)return SendClientMessage(playerid, COLOR_GREY, "Deine Fraktion bekämpft bereits ein Gebiet.");
    15. if(GWisStarted4Fraktion[GangFight[gwzone][warOwner]] == 1)return SendClientMessage(playerid, COLOR_GREY, "Der Besitzer ist bereits in einem Gangfight.");
    16. if(GangFight[gwzone][warOwner] == 0)
    17. {
    18. for(new i=0;i<GetMaxPlayers();i++)
    19. {
    20. if(IsLoggedIn(i))
    21. {
    22. if(Spieler[i][pFraktion] == Spieler[playerid][pFraktion])
    23. {
    24. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][0]);
    25. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][1]);
    26. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][2]);
    27. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][3]);
    28. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][4]);
    29. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][5]);
    30. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][6]);
    31. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][7]);
    32. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][8]);
    33. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][9]);
    34. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][10]);
    35. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][11]);
    36. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][12]);
    37. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][13]);
    38. GameTextForPlayer(i,"~g~GEBIET EINGENOMMEN",4000,5);
    39. }
    40. GangFight[gwzone][warOwner] = Spieler[playerid][pFraktion];
    41. GangFight[gwzone][warAttacker] = 0;
    42. GangFight[gwzone][warAttackerScore] = 0;
    43. GangFight[gwzone][warOwnerScore] = 0;
    44. GangFight[gwzone][warStarted] = 0;
    45. GangZoneShowForAll(GangFight[gwzone][warZoneID], GetZoneColor(Spieler[playerid][pFraktion]));
    46. return 1;
    47. }
    48. }
    49. }
    50. for(new a=0;a<GetMaxPlayers();a++)
    51. {
    52. if(IsLoggedIn(a))
    53. {
    54. if(Spieler[a][pFraktion] == GangFight[gwzone][warOwner])
    55. {
    56. gangs++;
    57. }
    58. }
    59. }
    60. if(gangs < 1)return SendClientMessage(playerid, COLOR_GREY, "Es müssen mindestens 1 Gegner online sein.");
    61. if(GangFight[gwzone][warReady] > 0)
    62. {
    63. format(string, sizeof(string), "Dieses Gebiet hat noch eine Sperre von %d Minuten.", (GangFight[gwzone][warReady]/60));
    64. SendClientMessage(playerid, COLOR_GREY, string);
    65. return 1;
    66. }
    67. format(string, sizeof(string), "Ein Gangfight von %s gegen %s (%s) wurde gestartet.", GetFraktionName(Spieler[playerid][pFraktion]), GetFraktionName(GangFight[gwzone][warOwner]), GangFight[gwzone][warZoneName]);
    68. for(new a=0;a<GetMaxPlayers();a++)
    69. {
    70. if(IsLoggedIn(a))
    71. {
    72. if(Spieler[a][pFraktion] == 3 || Spieler[a][pFraktion] == 5 || Spieler[a][pFraktion] == 8 || Spieler[a][pFraktion] == 9)
    73. {
    74. SendClientMessage(a, COLOR_ORANGE, string);
    75. }
    76. }
    77. }
    78. format(string, sizeof(string), "%s hat ein Gangfight (%s) gegen euch gestartet.", GetFraktionName(Spieler[playerid][pFraktion]), GangFight[gwzone][warZoneName]);
    79. SendFraktionMessage(GangFight[gwzone][warOwner], COLOR_ORANGE, string);
    80. format(string, sizeof(string), "Ein Gangfight gegen %s (%s) wurde von %s gestartet.", GetFraktionName(GangFight[gwzone][warOwner]), GangFight[gwzone][warZoneName], GetName(playerid));
    81. SendFraktionMessage(Spieler[playerid][pFraktion], COLOR_ORANGE, string);
    82. GangFight[gwzone][warAttacker] = Spieler[playerid][pFraktion];
    83. GWisStarted4Fraktion[GangFight[gwzone][warOwner]] = 1;
    84. GWisStarted4Fraktion[GangFight[gwzone][warAttacker]] = 1;
    85. GangFight[gwzone][warAttackerScore] = 0;
    86. GangFight[gwzone][warOwnerScore] = 0;
    87. GangFight[gwzone][warCapturedFlags][0] = 0;
    88. GangFight[gwzone][warCapturedFlags][1] = 0;
    89. GangFight[gwzone][warCapturedBy][0] = 0;
    90. GangFight[gwzone][warCapturedBy][1] = 0;
    91. GangFight[gwzone][warCaptureTime][0] = 0;
    92. GangFight[gwzone][warCaptureTime][1] = 0;
    93. GangFight[gwzone][warTime] = 60;
    94. GangFight[gwzone][warStarted] = 1;
    95. format(string, sizeof(string), "~b~%s:~w~ %d/%d Punkte", GetFrakName(GangFight[gwzone][warOwner]), 0, MAX_GANGFIGHTSCORE);
    96. TextDrawSetString(GangFight[gwzone][warDraw][3], string);
    97. format(string, sizeof(string), "~b~%s:~w~ %d/%d Punkte", GetFrakName(GangFight[gwzone][warAttacker]), 0, MAX_GANGFIGHTSCORE);
    98. TextDrawSetString(GangFight[gwzone][warDraw][4], string);
    99. format(string, sizeof(string), "~y~verbl. Zeit: %d Min", GangFight[gwzone][warTime]);
    100. TextDrawSetString(GangFight[gwzone][warDraw][5], string);
    101. GangZoneFlashForAll(GangFight[gwzone][warZoneID], GetZoneColor(Spieler[playerid][pFraktion]));
    102. if(IsPlayerInRangeOfPoint(playerid, 20.0, GangFight[gwzone][warFlagX1], GangFight[gwzone][warFlagY1], GangFight[gwzone][warFlagZ1]))
    103. {
    104. GangFight[gwzone][warCapturedFlags][0] = Spieler[playerid][pFraktion];
    105. format(string, sizeof(string), "Flagge A wurde von %s erobert.", GetName(playerid));
    106. SendFraktionMessage(Spieler[playerid][pFraktion], COLOR_ORANGE, string);
    107. }
    108. else if(IsPlayerInRangeOfPoint(playerid, 20.0, GangFight[gwzone][warFlagX2], GangFight[gwzone][warFlagY2], GangFight[gwzone][warFlagZ2]))
    109. {
    110. GangFight[gwzone][warCapturedFlags][1] = Spieler[playerid][pFraktion];
    111. format(string, sizeof(string), "Flagge B wurde von %s erobert.", GetName(playerid));
    112. SendFraktionMessage(Spieler[playerid][pFraktion], COLOR_ORANGE, string);
    113. }
    114. for(new i=0;i<GetMaxPlayers();i++)
    115. {
    116. if(IsLoggedIn(i))
    117. {
    118. if(Spieler[i][pFraktion] == GangFight[gwzone][warOwner])
    119. {
    120. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][0]);
    121. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][1]);
    122. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][2]);
    123. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][3]);
    124. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][4]);
    125. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][5]);
    126. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][6]);
    127. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][7]);
    128. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][8]);
    129. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][9]);
    130. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][10]);
    131. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][11]);
    132. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][12]);
    133. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][13]);
    134. }
    135. if(Spieler[i][pFraktion] == Spieler[playerid][pFraktion])
    136. {
    137. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][0]);
    138. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][1]);
    139. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][2]);
    140. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][3]);
    141. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][4]);
    142. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][5]);
    143. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][6]);
    144. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][7]);
    145. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][8]);
    146. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][9]);
    147. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][10]);
    148. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][11]);
    149. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][12]);
    150. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][13]);
    151. }
    152. }
    153. }
    154. }
    155. return 1;
    156. }
    Alles anzeigen
  • Das hängt mit der Rechenleistung deines PCs zusammen. Vermutlich ist dieser gerade anderweitig ausgelastet und es kommt zur Verzögerung.
    Mit freundlichen Grüßen
    FineTime

    NewborN schrieb:

    Das ganze mit den Geschlechtsverkehrenden Kühen am besten mit Move Object!

    Mr.Hot4Ever schrieb:

    Breadfish ist bestimmt ein Forum von RTL.
    [...]
    Nein direkt muss man haten weil man selber zu dumm zum scheißen ist.

    breadfish schrieb:

    P.S. ich bin nicht schwanger!

    Kones schrieb:

    Unter Alkoholeinfluss sollte man am besten die Finger weglassen vom Rechner - sonst kommt so ein Thema raus.

    Lifestyler schrieb:

    Kritik jeglicher Art ging dem Betreiber bis jetzt immer gekonnt am Po vorbei

    Lifestyler schrieb:

    Warst du evtl. böse?
  • Awayus schrieb:

    Hallo ich habe ein Script mit 40.000 Zeilen wenn ich das Compile dann dauert es immer nur so 1-2 Minuten, jetzt dauert es noch länger überhaupt ich keine Systeme oder so eingefügt habe es ist alles gleich weiß einer warum?
    Je mehr globale und lokale Variablen du deklarierst, und je mehr Code du an sich hast, kann der Vorgang einige Zeit in Anspruch nehmen. Vor allem größere Arrays, die im Code verwendet werden, tragen zu sehr langen Laufzeiten bei.
    Je stärker die Systemleistung (CPU, RAM, Festplatte), desto schneller geht es.
  • Warum startet mein Server nicht im Script?

    [19:13:47]bind 148.251.233.201 Server Plugins
    [19:13:47]bind 148.251.233.201 --------------
    [19:13:47]bind 148.251.233.201 Loading plugin: streamer
    [19:13:47]bind 148.251.233.201 Failed (plugins/streamer: cannot open shared object file: No such file or directory)
    [19:13:47]bind 148.251.233.201 Loaded 0 plugins.






    Wenn ich localhost server starte genau selbes Plugin funktioniert alles aber wenn ich aufs Server draufsetze dann nicht? Weiß jemand warum?

  • Habe mir Tutorials angeguckt wie man sich ein individuelles PayDay System erstellt, habe momentan das Problem das alle Daten auf 0 sind also irgendwie funktioniert etwas nicht hier alles was ich habe, vlt habe ich was übersehen.


    Das wird nach dem Login gemacht ( Zeile 6. )

    PAWN-Quellcode

    1. forward LoadAccount(playerid);
    2. public LoadAccount(playerid)
    3. {
    4. SetCameraBehindPlayer(playerid);
    5. SetPlayerScore(playerid,(pInfo[playerid][pLevel]));
    6. payday[playerid]=SetTimerEx("PayDay",1000*60,true,"i",playerid);
    7. return 1;
    8. }




    Der Timer wird auch beim Disconnect gekillt.

    PAWN-Quellcode

    1. KillTimer(payday[playerid]);

    PAWN-Quellcode

    1. forward PayDay(playerid);
    2. public PayDay(playerid)
    3. {
    4. if(pInfo[playerid][pPayDay]>=60)
    5. {
    6. //Wenn er PayDay hAT
    7. if(pInfo[playerid][pXP]>=pInfo[playerid][pXPMax])
    8. {
    9. SetPlayerScore(playerid,(pInfo[playerid][pLevel]+1));
    10. pInfo[playerid][pXP]=0;
    11. pInfo[playerid][pXPMax]+=6;
    12. GameTextForPlayer(playerid, "~y~ ~u~Levelup~y~ ~u~", 1000, 3);
    13. }
    14. if(pInfo[playerid][pLevel]==3)
    15. {
    16. SendClientMessage(playerid,-1,"{009BFF}Da du jetzt Level 3 bist kannst du dir den Waffenschein A erwerben.");
    17. }
    18. SendClientMessage(playerid,-1,"{009BFF}PayDay");
    19. pInfo[playerid][pPayDay]=0;
    20. SpielerSpeichern(playerid);
    21. return 1;
    22. }
    23. else
    24. {
    25. pInfo[playerid][pPayDay]+=1;
    26. SpielerSpeichern(playerid);
    27. }
    28. return 1;
    29. }
    Alles anzeigen

    PAWN-Quellcode

    1. ocmd:stats(playerid,params[])
    2. {
    3. new string[250];
    4. format(string, sizeof(string), "•Level: %d \n•Respektpunkte:%d/%d\n•Payday: %d/60", string, pInfo[playerid][pLevel],pInfo[playerid][pXP],pInfo[playerid][pXPMax],pInfo[playerid][pPayDay]);
    5. new string1[250];
    6. format(string1,sizeof(string1),"{FFFFFF}Stats von %s",Spielername(playerid));
    7. ShowPlayerDialog(playerid,DIALOG_STATS1,DIALOG_STYLE_MSGBOX,string1,string,"Schließen","");
    8. return 1;
    9. }
    Also ich möchte ja das man auch sehen kann das nach jeder Minute sich pPayDay sich auf +1 erhöht aber ich kann 10 Minuten warten da passiert nichts. Also bei dem %d/60, wenn ich einen neuen Command erstelle der mir das auf +60 setzt steht da immer noch 0
  • PAWN-Quellcode

    1. format(string, sizeof(string), "•Level: %d \n•Respektpunkte:%d/%d\n•Payday: %d/60", string, pInfo[playerid][pLevel],pInfo[playerid][pXP],pInfo[playerid][pXPMax],pInfo[playerid][pPayDay]);

    zu:

    PAWN-Quellcode

    1. format(string, sizeof(string), "•Level: %d \n•Respektpunkte:%d/%d\n•Payday: %d/60", pInfo[playerid][pLevel],pInfo[playerid][pXP],pInfo[playerid][pXPMax],pInfo[playerid][pPayDay]);
  • Kuno schrieb:

    Hay,

    Undzwar habe ich eine Frage...
    Beim VRL-Script kann man ein Gangfight nur in der Nähe von einer Flagge starten.... Ich wollte aber das Gangfight System ohne Flaggen nutzen und nur auf Kills basieren sowie, dass man ein Gangfight starten kann, sobald man in der Zone ist.
    Würde mir jemand helfen wie ich das einrichten kann?
    Code zu /gangfight ist ebenfalls angehangen.

    PAWN-Quellcode

    1. CMD:gangfight(playerid)
    2. {
    3. new string[128], gwzone = GetPlayerGangzone(playerid), gangs = 0;
    4. if(!IsGang(Spieler[playerid][pFraktion]))return SendClientMessage(playerid, COLOR_GREY, "Du gehörst keiner Gang/Mafia an.");
    5. if(Spieler[playerid][pRank] < 5)return SendClientMessage(playerid, COLOR_GREY, "Gangfights können erst ab Rang 5 gestartet werden.");
    6. if(IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid, COLOR_GREY, "Du darfst dich in keinem Fahrzeug befinden.");
    7. if(gwzone == -1)return SendClientMessage(playerid, COLOR_GREY, "Du befindest dich in keiner Gangfight Zone.");
    8. if(GangFight[gwzone][warOwner] == Spieler[playerid][pFraktion])return SendClientMessage(playerid, COLOR_GREY, "Dieses Gebiet gehört bereits deiner Fraktion.");
    9. if(GangFight[gwzone][warAttacker] == Spieler[playerid][pFraktion])return SendClientMessage(playerid, COLOR_GREY, "Deine Fraktion greift dieses Gebiet bereits an.");
    10. if(GangFight[gwzone][warTime] != 0 || GangFight[gwzone][warAttacker] != 0 ||GangFight[gwzone][warStarted] != 0)return SendClientMessage(playerid, COLOR_GREY, "Dieses Gebiet wird bereits umkämpft.");
    11. if(IsPlayerInRangeOfPoint(playerid, 5.0, GangFight[gwzone][warFlagX1], GangFight[gwzone][warFlagY1], GangFight[gwzone][warFlagZ1]) ||
    12. IsPlayerInRangeOfPoint(playerid, 5.0, GangFight[gwzone][warFlagX2], GangFight[gwzone][warFlagY2], GangFight[gwzone][warFlagZ2]))
    13. {
    14. if(GWisStarted4Fraktion[Spieler[playerid][pFraktion]] == 1)return SendClientMessage(playerid, COLOR_GREY, "Deine Fraktion bekämpft bereits ein Gebiet.");
    15. if(GWisStarted4Fraktion[GangFight[gwzone][warOwner]] == 1)return SendClientMessage(playerid, COLOR_GREY, "Der Besitzer ist bereits in einem Gangfight.");
    16. if(GangFight[gwzone][warOwner] == 0)
    17. {
    18. for(new i=0;i<GetMaxPlayers();i++)
    19. {
    20. if(IsLoggedIn(i))
    21. {
    22. if(Spieler[i][pFraktion] == Spieler[playerid][pFraktion])
    23. {
    24. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][0]);
    25. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][1]);
    26. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][2]);
    27. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][3]);
    28. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][4]);
    29. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][5]);
    30. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][6]);
    31. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][7]);
    32. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][8]);
    33. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][9]);
    34. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][10]);
    35. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][11]);
    36. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][12]);
    37. TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][13]);
    38. GameTextForPlayer(i,"~g~GEBIET EINGENOMMEN",4000,5);
    39. }
    40. GangFight[gwzone][warOwner] = Spieler[playerid][pFraktion];
    41. GangFight[gwzone][warAttacker] = 0;
    42. GangFight[gwzone][warAttackerScore] = 0;
    43. GangFight[gwzone][warOwnerScore] = 0;
    44. GangFight[gwzone][warStarted] = 0;
    45. GangZoneShowForAll(GangFight[gwzone][warZoneID], GetZoneColor(Spieler[playerid][pFraktion]));
    46. return 1;
    47. }
    48. }
    49. }
    50. for(new a=0;a<GetMaxPlayers();a++)
    51. {
    52. if(IsLoggedIn(a))
    53. {
    54. if(Spieler[a][pFraktion] == GangFight[gwzone][warOwner])
    55. {
    56. gangs++;
    57. }
    58. }
    59. }
    60. if(gangs < 1)return SendClientMessage(playerid, COLOR_GREY, "Es müssen mindestens 1 Gegner online sein.");
    61. if(GangFight[gwzone][warReady] > 0)
    62. {
    63. format(string, sizeof(string), "Dieses Gebiet hat noch eine Sperre von %d Minuten.", (GangFight[gwzone][warReady]/60));
    64. SendClientMessage(playerid, COLOR_GREY, string);
    65. return 1;
    66. }
    67. format(string, sizeof(string), "Ein Gangfight von %s gegen %s (%s) wurde gestartet.", GetFraktionName(Spieler[playerid][pFraktion]), GetFraktionName(GangFight[gwzone][warOwner]), GangFight[gwzone][warZoneName]);
    68. for(new a=0;a<GetMaxPlayers();a++)
    69. {
    70. if(IsLoggedIn(a))
    71. {
    72. if(Spieler[a][pFraktion] == 3 || Spieler[a][pFraktion] == 5 || Spieler[a][pFraktion] == 8 || Spieler[a][pFraktion] == 9)
    73. {
    74. SendClientMessage(a, COLOR_ORANGE, string);
    75. }
    76. }
    77. }
    78. format(string, sizeof(string), "%s hat ein Gangfight (%s) gegen euch gestartet.", GetFraktionName(Spieler[playerid][pFraktion]), GangFight[gwzone][warZoneName]);
    79. SendFraktionMessage(GangFight[gwzone][warOwner], COLOR_ORANGE, string);
    80. format(string, sizeof(string), "Ein Gangfight gegen %s (%s) wurde von %s gestartet.", GetFraktionName(GangFight[gwzone][warOwner]), GangFight[gwzone][warZoneName], GetName(playerid));
    81. SendFraktionMessage(Spieler[playerid][pFraktion], COLOR_ORANGE, string);
    82. GangFight[gwzone][warAttacker] = Spieler[playerid][pFraktion];
    83. GWisStarted4Fraktion[GangFight[gwzone][warOwner]] = 1;
    84. GWisStarted4Fraktion[GangFight[gwzone][warAttacker]] = 1;
    85. GangFight[gwzone][warAttackerScore] = 0;
    86. GangFight[gwzone][warOwnerScore] = 0;
    87. GangFight[gwzone][warCapturedFlags][0] = 0;
    88. GangFight[gwzone][warCapturedFlags][1] = 0;
    89. GangFight[gwzone][warCapturedBy][0] = 0;
    90. GangFight[gwzone][warCapturedBy][1] = 0;
    91. GangFight[gwzone][warCaptureTime][0] = 0;
    92. GangFight[gwzone][warCaptureTime][1] = 0;
    93. GangFight[gwzone][warTime] = 60;
    94. GangFight[gwzone][warStarted] = 1;
    95. format(string, sizeof(string), "~b~%s:~w~ %d/%d Punkte", GetFrakName(GangFight[gwzone][warOwner]), 0, MAX_GANGFIGHTSCORE);
    96. TextDrawSetString(GangFight[gwzone][warDraw][3], string);
    97. format(string, sizeof(string), "~b~%s:~w~ %d/%d Punkte", GetFrakName(GangFight[gwzone][warAttacker]), 0, MAX_GANGFIGHTSCORE);
    98. TextDrawSetString(GangFight[gwzone][warDraw][4], string);
    99. format(string, sizeof(string), "~y~verbl. Zeit: %d Min", GangFight[gwzone][warTime]);
    100. TextDrawSetString(GangFight[gwzone][warDraw][5], string);
    101. GangZoneFlashForAll(GangFight[gwzone][warZoneID], GetZoneColor(Spieler[playerid][pFraktion]));
    102. if(IsPlayerInRangeOfPoint(playerid, 20.0, GangFight[gwzone][warFlagX1], GangFight[gwzone][warFlagY1], GangFight[gwzone][warFlagZ1]))
    103. {
    104. GangFight[gwzone][warCapturedFlags][0] = Spieler[playerid][pFraktion];
    105. format(string, sizeof(string), "Flagge A wurde von %s erobert.", GetName(playerid));
    106. SendFraktionMessage(Spieler[playerid][pFraktion], COLOR_ORANGE, string);
    107. }
    108. else if(IsPlayerInRangeOfPoint(playerid, 20.0, GangFight[gwzone][warFlagX2], GangFight[gwzone][warFlagY2], GangFight[gwzone][warFlagZ2]))
    109. {
    110. GangFight[gwzone][warCapturedFlags][1] = Spieler[playerid][pFraktion];
    111. format(string, sizeof(string), "Flagge B wurde von %s erobert.", GetName(playerid));
    112. SendFraktionMessage(Spieler[playerid][pFraktion], COLOR_ORANGE, string);
    113. }
    114. for(new i=0;i<GetMaxPlayers();i++)
    115. {
    116. if(IsLoggedIn(i))
    117. {
    118. if(Spieler[i][pFraktion] == GangFight[gwzone][warOwner])
    119. {
    120. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][0]);
    121. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][1]);
    122. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][2]);
    123. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][3]);
    124. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][4]);
    125. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][5]);
    126. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][6]);
    127. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][7]);
    128. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][8]);
    129. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][9]);
    130. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][10]);
    131. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][11]);
    132. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][12]);
    133. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][13]);
    134. }
    135. if(Spieler[i][pFraktion] == Spieler[playerid][pFraktion])
    136. {
    137. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][0]);
    138. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][1]);
    139. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][2]);
    140. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][3]);
    141. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][4]);
    142. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][5]);
    143. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][6]);
    144. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][7]);
    145. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][8]);
    146. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][9]);
    147. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][10]);
    148. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][11]);
    149. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][12]);
    150. TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][13]);
    151. }
    152. }
    153. }
    154. }
    155. return 1;
    156. }
    Alles anzeigen

    Kann mir jemand helfen? :/
  • Neu

    Kuno schrieb:

    Kuno schrieb:

    Hay,

    Undzwar habe ich eine Frage...
    Beim VRL-Script kann man ein Gangfight nur in der Nähe von einer Flagge starten.... Ich wollte aber das Gangfight System ohne Flaggen nutzen und nur auf Kills basieren sowie, dass man ein Gangfight starten kann, sobald man in der Zone ist.
    Würde mir jemand helfen wie ich das einrichten kann?
    Code zu /gangfight ist ebenfalls angehangen.

    PAWN-Quellcode

    1. CMD:gangfight(playerid){ new string[128], gwzone = GetPlayerGangzone(playerid), gangs = 0; if(!IsGang(Spieler[playerid][pFraktion]))return SendClientMessage(playerid, COLOR_GREY, "Du gehörst keiner Gang/Mafia an."); if(Spieler[playerid][pRank] < 5)return SendClientMessage(playerid, COLOR_GREY, "Gangfights können erst ab Rang 5 gestartet werden."); if(IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid, COLOR_GREY, "Du darfst dich in keinem Fahrzeug befinden."); if(gwzone == -1)return SendClientMessage(playerid, COLOR_GREY, "Du befindest dich in keiner Gangfight Zone."); if(GangFight[gwzone][warOwner] == Spieler[playerid][pFraktion])return SendClientMessage(playerid, COLOR_GREY, "Dieses Gebiet gehört bereits deiner Fraktion."); if(GangFight[gwzone][warAttacker] == Spieler[playerid][pFraktion])return SendClientMessage(playerid, COLOR_GREY, "Deine Fraktion greift dieses Gebiet bereits an."); if(GangFight[gwzone][warTime] != 0 || GangFight[gwzone][warAttacker] != 0 ||GangFight[gwzone][warStarted] != 0)return SendClientMessage(playerid, COLOR_GREY, "Dieses Gebiet wird bereits umkämpft."); if(IsPlayerInRangeOfPoint(playerid, 5.0, GangFight[gwzone][warFlagX1], GangFight[gwzone][warFlagY1], GangFight[gwzone][warFlagZ1]) || IsPlayerInRangeOfPoint(playerid, 5.0, GangFight[gwzone][warFlagX2], GangFight[gwzone][warFlagY2], GangFight[gwzone][warFlagZ2])) { if(GWisStarted4Fraktion[Spieler[playerid][pFraktion]] == 1)return SendClientMessage(playerid, COLOR_GREY, "Deine Fraktion bekämpft bereits ein Gebiet."); if(GWisStarted4Fraktion[GangFight[gwzone][warOwner]] == 1)return SendClientMessage(playerid, COLOR_GREY, "Der Besitzer ist bereits in einem Gangfight."); if(GangFight[gwzone][warOwner] == 0) { for(new i=0;i<GetMaxPlayers();i++) { if(IsLoggedIn(i)) { if(Spieler[i][pFraktion] == Spieler[playerid][pFraktion]) { TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][0]); TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][1]); TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][2]); TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][3]); TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][4]); TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][5]); TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][6]); TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][7]); TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][8]); TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][9]); TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][10]); TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][11]); TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][12]); TextDrawHideForPlayer(i,GangFight[gwzone][warDraw][13]); GameTextForPlayer(i,"~g~GEBIET EINGENOMMEN",4000,5); } GangFight[gwzone][warOwner] = Spieler[playerid][pFraktion]; GangFight[gwzone][warAttacker] = 0; GangFight[gwzone][warAttackerScore] = 0; GangFight[gwzone][warOwnerScore] = 0; GangFight[gwzone][warStarted] = 0; GangZoneShowForAll(GangFight[gwzone][warZoneID], GetZoneColor(Spieler[playerid][pFraktion])); return 1; } } } for(new a=0;a<GetMaxPlayers();a++) { if(IsLoggedIn(a)) { if(Spieler[a][pFraktion] == GangFight[gwzone][warOwner]) { gangs++; } } } if(gangs < 1)return SendClientMessage(playerid, COLOR_GREY, "Es müssen mindestens 1 Gegner online sein."); if(GangFight[gwzone][warReady] > 0) { format(string, sizeof(string), "Dieses Gebiet hat noch eine Sperre von %d Minuten.", (GangFight[gwzone][warReady]/60)); SendClientMessage(playerid, COLOR_GREY, string); return 1; } format(string, sizeof(string), "Ein Gangfight von %s gegen %s (%s) wurde gestartet.", GetFraktionName(Spieler[playerid][pFraktion]), GetFraktionName(GangFight[gwzone][warOwner]), GangFight[gwzone][warZoneName]); for(new a=0;a<GetMaxPlayers();a++) { if(IsLoggedIn(a)) { if(Spieler[a][pFraktion] == 3 || Spieler[a][pFraktion] == 5 || Spieler[a][pFraktion] == 8 || Spieler[a][pFraktion] == 9) { SendClientMessage(a, COLOR_ORANGE, string); } } } format(string, sizeof(string), "%s hat ein Gangfight (%s) gegen euch gestartet.", GetFraktionName(Spieler[playerid][pFraktion]), GangFight[gwzone][warZoneName]); SendFraktionMessage(GangFight[gwzone][warOwner], COLOR_ORANGE, string); format(string, sizeof(string), "Ein Gangfight gegen %s (%s) wurde von %s gestartet.", GetFraktionName(GangFight[gwzone][warOwner]), GangFight[gwzone][warZoneName], GetName(playerid)); SendFraktionMessage(Spieler[playerid][pFraktion], COLOR_ORANGE, string); GangFight[gwzone][warAttacker] = Spieler[playerid][pFraktion]; GWisStarted4Fraktion[GangFight[gwzone][warOwner]] = 1; GWisStarted4Fraktion[GangFight[gwzone][warAttacker]] = 1; GangFight[gwzone][warAttackerScore] = 0; GangFight[gwzone][warOwnerScore] = 0; GangFight[gwzone][warCapturedFlags][0] = 0; GangFight[gwzone][warCapturedFlags][1] = 0; GangFight[gwzone][warCapturedBy][0] = 0; GangFight[gwzone][warCapturedBy][1] = 0; GangFight[gwzone][warCaptureTime][0] = 0; GangFight[gwzone][warCaptureTime][1] = 0; GangFight[gwzone][warTime] = 60; GangFight[gwzone][warStarted] = 1; format(string, sizeof(string), "~b~%s:~w~ %d/%d Punkte", GetFrakName(GangFight[gwzone][warOwner]), 0, MAX_GANGFIGHTSCORE); TextDrawSetString(GangFight[gwzone][warDraw][3], string); format(string, sizeof(string), "~b~%s:~w~ %d/%d Punkte", GetFrakName(GangFight[gwzone][warAttacker]), 0, MAX_GANGFIGHTSCORE); TextDrawSetString(GangFight[gwzone][warDraw][4], string); format(string, sizeof(string), "~y~verbl. Zeit: %d Min", GangFight[gwzone][warTime]); TextDrawSetString(GangFight[gwzone][warDraw][5], string); GangZoneFlashForAll(GangFight[gwzone][warZoneID], GetZoneColor(Spieler[playerid][pFraktion])); if(IsPlayerInRangeOfPoint(playerid, 20.0, GangFight[gwzone][warFlagX1], GangFight[gwzone][warFlagY1], GangFight[gwzone][warFlagZ1])) { GangFight[gwzone][warCapturedFlags][0] = Spieler[playerid][pFraktion]; format(string, sizeof(string), "Flagge A wurde von %s erobert.", GetName(playerid)); SendFraktionMessage(Spieler[playerid][pFraktion], COLOR_ORANGE, string); } else if(IsPlayerInRangeOfPoint(playerid, 20.0, GangFight[gwzone][warFlagX2], GangFight[gwzone][warFlagY2], GangFight[gwzone][warFlagZ2])) { GangFight[gwzone][warCapturedFlags][1] = Spieler[playerid][pFraktion]; format(string, sizeof(string), "Flagge B wurde von %s erobert.", GetName(playerid)); SendFraktionMessage(Spieler[playerid][pFraktion], COLOR_ORANGE, string); } for(new i=0;i<GetMaxPlayers();i++) { if(IsLoggedIn(i)) { if(Spieler[i][pFraktion] == GangFight[gwzone][warOwner]) { TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][0]); TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][1]); TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][2]); TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][3]); TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][4]); TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][5]); TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][6]); TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][7]); TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][8]); TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][9]); TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][10]); TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][11]); TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][12]); TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][13]); } if(Spieler[i][pFraktion] == Spieler[playerid][pFraktion]) { TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][0]); TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][1]); TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][2]); TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][3]); TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][4]); TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][5]); TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][6]); TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][7]); TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][8]); TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][9]); TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][10]); TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][11]); TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][12]); TextDrawShowForPlayer(i, GangFight[gwzone][warDraw][13]); } } } } return 1;}

    Kann mir jemand helfen? :/
    Einfach oben das warFlag.. rausnehmen, bin auf'm Handy.
  • Neu

    PAWN-Quellcode

    1. else
    2. {
    3. if(IsPlayerInRangeOfPoint(i,10,1633.10706, -1737.88904, 12.547))
    4. {
    5. if(pInfo[i][pZuletztGeblitzt] < time)
    6. {
    7. speed = getPlayerSpeed(i);
    8. if(speed > 55)
    9. {
    10. GameTextForPlayer(i, "~r~!Du wurdest geblitzt!", 700, 3);
    11. extrageldstrafe = floatround((speed - 50) * 200);
    12. pInfo[i][pZuletztGeblitzt] = gettime();
    13. uebertretung = floatround(speed - 50);
    14. pInfo[i][pGeld] = -geldstrafe;
    15. GivePlayerMoney(i, -geldstrafe);
    16. new string[145];
    17. format(string, sizeof(string), "{c45461}Du bist %dKm/h gefahren (%dKm/h zu viel). Du musst ein extra Bußgeld bezahlen, Bußgeld in höhe von $%d.", floatround(speed), uebertretung, punkte, extrageldstrafe);
    18. SendClientMessage(i,-1, string);
    19. }
    20. }
    21. }
    22. }
    23. }
    24. }
    25. }
    26. return true;
    27. }
    Alles anzeigen
    Er zeigt mir im String immer 0$ an aber zieht mir das richtige ab ( Stringlänge passt ) woran liegt es habe einiges getestet.
  • Neu

    PAWN-Quellcode

    1. format(string, sizeof(string), "{c45461}Du bist %dKm/h gefahren (%dKm/h zu viel). Du musst ein extra Bußgeld bezahlen, Bußgeld in höhe von $%d.", floatround(speed), uebertretung, punkte, extrageldstrafe);


    zu

    PAWN-Quellcode

    1. format(string, sizeof(string), "{c45461}Du bist %dKm/h gefahren (%dKm/h zu viel). Du musst ein extra Bußgeld bezahlen, Bußgeld in höhe von $%d.", floatround(speed), uebertretung, extrageldstrafe);