Angepinnt [SAMMELTHREAD] Kleine Scripting Fragen

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Dr. Frauenarzt schrieb:

    -2279.9031, -1943.8967, -2279.9031, -2222.6743
    Schau mal genau auf die Koordinaten, da kamst du wohl durcheinander mit dem kopieren.

    Du hast plötzlich 2x die selbe minX und maxX Koordinate ^^

    So sollte das aussehen...

    PAWN-Quellcode

    1. -2279.9031, -2551.4695, -1943.8967, -2222.6743


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. X/
  • Jou Danke hab mir das schon zuhilfe genommen:

    dev.prineside.com/gtasa_gangzone_editor/

    Funktioniert eigentlich das simpel aber habe folgendes Problem:

    Er gibt mir die Kordis bei der ein Zone So aus:

    PAWN-Quellcode

    1. -1630, 2503.666664123535, -1363, 2715.666664123535


    Aber beim Compeilen sagt er mir:


    PAWN-Quellcode

    1. C:\Users\User\Desktop\Reallife\Reallife Script\gamemodes\German.pwn(451) : warning 213: tag mismatchC:\Users\User\Desktop\Reallifen\Reallife Script\gamemodes\German.pwn(451) : warning 213: tag mismatch


    Fehler Zeile:

    PAWN-Quellcode

    1. {"El Quebrados", -1630, 2503.666664123535, -1363, 2715.666664123535, -1515.3817, 2534.1997, 55.6875, -1480.7784, 2625.8945, 58.7813, 1299.9275, 2506.2488, 86.9799, 1, 2000},


    Noch dazu kommt die Kordis sind ja sehr sehr lang kann man die nicht iwie kürzen?

    Beitrag von Dr. Frauenarzt ()

    Dieser Beitrag wurde vom Autor aus folgendem Grund gelöscht: Selbst übt sich xD ().
  • Chiller.502 schrieb:

    Wie kann ich aus einem Timer auslesen, wieviel Minuten er noch beträgt?

    Kaliber schrieb:

    Zum Beispiel so:
    Das solltest du so nicht ohne weiteres machen, da die Timer in SA-MP sehr ungenau sind und du somit bei längerer Laufzeit des Timers (mehrere Minuten) falsche Werte angezeigt bekommst.
    Entweder du nutzt das TimeFix Include (forum.sa-mp.com/showthread.php?t=289675) bzw. Plugin (forum.sa-mp.com/showthread.php?t=650736), dann kannst du den Code so nutzen, auch wenn es nicht die sauberste Variante ist.

    Die Alternative wäre, einen einzigen globalen Timer zu nutzen und diesen jede Sekunde einmal aufzurufen und darin dann solche Variablen abfragen und sobald diese kleiner gleich dem Timestamp sind, die gewünschte Funktion ausführen. Dann sparst du dir die x Timer, die am Laufen sind und hast alles übersichtlich an einer Stelle.

    Oder, wenn es nur darum geht, z.B. einen Befehl für eine bestimmte Zeit zu sperren, dann einfach so:

    PAWN-Quellcode

    1. blockedUntil[playerid] = gettime() + 5 * 60; //5 Minuten gesperrt

    Und dann:

    PAWN-Quellcode

    1. if(blockedUntil[playerid] > gettime())
    2. {
    3. //Befehl ist noch "remain_min" Minuten und "remain_sec" Sekunden gesperrt.
    4. }


    Kommt eben drauf an, für was du das brauchst.
  • Nur ein Teil der Geschäfte werden geladen.
    prntscr.com/myfmpb ich habe 9 Einträge

    Das letzte Biz, was ich eingetragen habe wird nicht erstellt. Aus Vergangenheit weiß ich, dass es nicht das einzige Biz ist.
    Woran könnte es liegen?

    C-Quellcode

    1. enum bizinteriors{
    2. Name[35],
    3. Interior,
    4. Welt,
    5. Biztype,
    6. Float:IX,Float:IY,Float:IZ// Exit Position
    7. }
    8. stock const BizInts[][bizinteriors]={
    9. {"dummy",0,0,0,/*InteriorPos*/0.0,0.0,0.0},
    10. {"dummy",0,0,0,/*InteriorPos*/0.0,0.0,0.0},
    11. {"dummy",0,0,0,/*InteriorPos*/0.0,0.0,0.0},
    12. {"dummy",0,0,0,/*InteriorPos*/0.0,0.0,0.0},
    13. {"dummy",0,0,0,/*InteriorPos*/0.0,0.0,0.0},
    14. {"dummy",0,0,0,/*InteriorPos*/0.0,0.0,0.0},
    15. {"dummy",0,0,0,/*InteriorPos*/0.0,0.0,0.0},
    16. {"(Beispiel Biz)",0,0,0,/*InteriorPos*/0.0,0.0,0.0}
    17. };
    Alles anzeigen



    C-Quellcode

    1. forward BizLaden();
    2. public BizLaden()
    3. {
    4. new rows;
    5. cache_get_row_count(rows);
    6. if(rows==0) return print("(*)Geschäfte konnten nicht geladen werden.");
    7. for(new bizid = 0; bizid < sizeof(bInfo); bizid++)
    8. {
    9. //-------------------------------------------------
    10. }
    11. UpdateBizInfos();
    12. return 1;
    13. }
    Alles anzeigen


    C-Quellcode

    1. stock UpdateBizInfos()
    2. {
    3. new string[228];
    4. for(new b;b<sizeof(bInfo);b++)
    5. {
    6. format(string, sizeof(string), "X",BizType[bInfo[b][biztype]],BizType2[bInfo[b][biztype2]],OpenTime[bInfo[b][bopentime]],bInfo[b][bwaren],bInfo[b][bmaxwaren],bInfo[b][bbesitzer],BizBefehl[bInfo[b][bizbefehl]] );
    7. CreateDynamic3DTextLabel(string,GREEN,bInfo[b][bX],bInfo[b][bY],bInfo[b][bZ],20.0);
    8. CreateDynamicPickup(1318,1,bInfo[b][bX],bInfo[b][bY],bInfo[b][bZ]); // 24/7 Neulingspawn1559
    9. }
    10. return 1;
    11. }
    Alles anzeigen

    Ich weiß, dass ich weiß, dass ich nichts weiß.

  • Hey,

    Kurze frage mir gehört die Flagge nicht und kann die Flagge nicht einnehmen.
    Er sagt mir das ich die Flagge bereits besitze aber mir gehört die Flagge nicht.

    Kleines Update:

    Bisher sagt er mir die Flagge gehört mir aber die gehört in Gegner -_-

    Spoiler anzeigen


    C-Quellcode

    1. ocmd:flag(playerid, params)
    2. {
    3. new gw = GetPlayerGangzone(playerid), string[128];
    4. if(IsGang(Spieler[playerid][pFraktion]))
    5. {
    6. if(!IsPlayerInAnyVehicle(playerid) && GangFight[gw][warTime] != 0 || GangFight[gw][warAttacker] != 0 || GangFight[gw][warStarted] == 1)
    7. {
    8. if(IsPlayerInRangeOfPoint(playerid, 5.0, GangFight[gw][warFlagX1], GangFight[gw][warFlagY1], GangFight[gw][warFlagZ1]))
    9. {
    10. if(Spieler[playerid][pFraktion] == GangFight[gw][warOwner])
    11. {
    12. if(GangFight[gw][warCapturedFlags][0] == GangFight[gw][warOwner])
    13. {
    14. GangFight[gw][warOwnerScore] += 1;
    15. format(string, sizeof(string), "~b~%03d", GangFight[gw][warOwnerScore]);
    16. TextDrawSetString(GangFight[gw][warDraw][5], string);
    17. format(string, sizeof(string), "~b~%d", MAX_GANGFIGHTSCORE);
    18. TextDrawSetString(GangFight[gw][warDraw][3], string);
    19. format(string, sizeof(string), "~w~%s", GetFrakName(GangFight[gw][warOwner]));
    20. TextDrawSetString(GangFight[gw][warDraw][15], string);
    21. format(string, sizeof(string), "{FF9933}[GANGFIGHT] %s (%s) hat Flagge A erobert.", GetName(playerid), GetFrakName(GangFight[gw][warOwner]));
    22. SendFraktionMessage(GangFight[gw][warOwner], COLOR_WHITE, string);
    23. SendFraktionMessage(GangFight[gw][warAttacker], COLOR_WHITE, string);
    24. GangFight[gw][warCaptureTime][0] = 0;
    25. GangFight[gw][warCapturedFlags][0] = Spieler[playerid][pFraktion];
    26. return 1;
    27. }
    28. return SendClientMessage(playerid, COLOR_WHITE, "{AFAFAF}Diese Flagge gehört bereits deiner Fraktion.");
    29. }
    30. if(Spieler[playerid][pFraktion] == GangFight[gw][warAttacker])
    31. {
    32. if(GangFight[gw][warCapturedFlags][0] == GangFight[gw][warAttacker])
    33. {
    34. GangFight[gw][warOwnerScore] += 1;
    35. format(string, sizeof(string), "~b~%03d", GangFight[gw][warAttackerScore]);
    36. TextDrawSetString(GangFight[gw][warDraw][6], string);
    37. format(string, sizeof(string), "~b~%d", MAX_GANGFIGHTSCORE);
    38. TextDrawSetString(GangFight[gw][warDraw][2], string);
    39. format(string, sizeof(string), "~w~%s", GetFrakName(GangFight[gw][warAttacker]));
    40. TextDrawSetString(GangFight[gw][warDraw][15], string);
    41. format(string, sizeof(string), "{FF9933}[GANGFIGHT] %s (%s) hat Flagge A erobert.", GetName(playerid), GetFrakName(GangFight[gw][warAttacker]));
    42. SendFraktionMessage(GangFight[gw][warAttacker], COLOR_WHITE, string);
    43. SendFraktionMessage(GangFight[gw][warOwner], COLOR_WHITE, string);
    44. GangFight[gw][warCaptureTime][0] = 0;
    45. GangFight[gw][warCapturedFlags][0] = Spieler[playerid][pFraktion];
    46. format(string, sizeof(string), "{AFAFAF}Flagge A\n%s\n\n%s", GangFight[gw][warZoneName], GetFrakName(GangFight[gw][warAttacker]));
    47. Update3DTextLabelText(GangFight[gw][WarLabel][0], COLOR_WHITE, string);
    48. return 1;
    49. }
    50. return SendClientMessage(playerid, COLOR_WHITE, "{AFAFAF}Diese Flagge gehört bereits deiner Fraktion.");
    51. }
    52. }
    53. }
    54. if(IsPlayerInRangeOfPoint(playerid, 5.0, GangFight[gw][warFlagX2], GangFight[gw][warFlagY2], GangFight[gw][warFlagZ2]))
    55. {
    56. if(Spieler[playerid][pFraktion] == GangFight[gw][warOwner])
    57. {
    58. if(GangFight[gw][warCapturedFlags][1] == GangFight[gw][warOwner])
    59. {
    60. GangFight[gw][warOwnerScore] += 1;
    61. format(string, sizeof(string), "~b~%03d", GangFight[gw][warOwnerScore]);
    62. TextDrawSetString(GangFight[gw][warDraw][5], string);
    63. format(string, sizeof(string), "~b~%d", MAX_GANGFIGHTSCORE);
    64. TextDrawSetString(GangFight[gw][warDraw][3], string);
    65. format(string, sizeof(string), "~w~%s", GetFrakName(GangFight[gw][warOwner]));
    66. TextDrawSetString(GangFight[gw][warDraw][16], string);
    67. format(string, sizeof(string), "{FF9933}[GANGFIGHT] %s (%s) hat Flagge B erobert.", GetName(playerid), GetFrakName(GangFight[gw][warOwner]));
    68. SendFraktionMessage(GangFight[gw][warOwner], COLOR_WHITE, string);
    69. SendFraktionMessage(GangFight[gw][warAttacker], COLOR_WHITE, string);
    70. GangFight[gw][warCaptureTime][1] = 0;
    71. GangFight[gw][warCapturedFlags][1] = Spieler[playerid][pFraktion];
    72. format(string, sizeof(string), "{AFAFAF}Flagge B\n%s\n\n%s", GangFight[gw][warZoneName], GetFrakName(GangFight[gw][warOwner]));
    73. Update3DTextLabelText(GangFight[gw][WarLabel][1], COLOR_WHITE, string);
    74. return 1;
    75. }
    76. return SendClientMessage(playerid, COLOR_WHITE, "{AFAFAF}Diese Flagge gehört bereits deiner Fraktion.");
    77. }
    78. if(Spieler[playerid][pFraktion] == GangFight[gw][warAttacker])
    79. {
    80. if(GangFight[gw][warCapturedFlags][1] == GangFight[gw][warAttacker])
    81. {
    82. GangFight[gw][warAttackerScore] += 1;
    83. format(string, sizeof(string), "~b~%03d", GangFight[gw][warAttackerScore]);
    84. TextDrawSetString(GangFight[gw][warDraw][6], string);
    85. format(string, sizeof(string), "~b~%d", MAX_GANGFIGHTSCORE);
    86. TextDrawSetString(GangFight[gw][warDraw][2], string);
    87. format(string, sizeof(string), "~w~%s", GetFrakName(GangFight[gw][warAttacker]));
    88. TextDrawSetString(GangFight[gw][warDraw][16], string);
    89. format(string, sizeof(string), "{FF9933}[GANGFIGHT] %s (%s) hat Flagge B erobert.", GetName(playerid), GetFrakName(GangFight[gw][warAttacker]));
    90. SendFraktionMessage(GangFight[gw][warAttacker], COLOR_WHITE, string);
    91. SendFraktionMessage(GangFight[gw][warOwner], COLOR_WHITE, string);
    92. GangFight[gw][warCaptureTime][1] = 0;
    93. GangFight[gw][warCapturedFlags][1] = Spieler[playerid][pFraktion];
    94. format(string, sizeof(string), "{AFAFAF}Flagge B\n%s\n\n%s", GangFight[gw][warZoneName], GetFrakName(GangFight[gw][warAttacker]));
    95. Update3DTextLabelText(GangFight[gw][WarLabel][1], COLOR_WHITE, string);
    96. return 1;
    97. }
    98. return SendClientMessage(playerid, COLOR_WHITE, "{AFAFAF}Diese Flagge gehört bereits deiner Fraktion.");
    99. }
    100. }
    101. if(IsPlayerInRangeOfPoint(playerid, 5.0, GangFight[gw][warFlagX3], GangFight[gw][warFlagY3], GangFight[gw][warFlagZ3]))
    102. {
    103. if(Spieler[playerid][pFraktion] == GangFight[gw][warOwner])
    104. {
    105. if(GangFight[gw][warCapturedFlags][2] == GangFight[gw][warOwner])
    106. {
    107. GangFight[gw][warOwnerScore] += 1;
    108. format(string, sizeof(string), "~b~%03d", GangFight[gw][warOwnerScore]);
    109. TextDrawSetString(GangFight[gw][warDraw][5], string);
    110. format(string, sizeof(string), "~b~%d", MAX_GANGFIGHTSCORE);
    111. TextDrawSetString(GangFight[gw][warDraw][3], string);
    112. format(string, sizeof(string), "~w~%s", GetFrakName(GangFight[gw][warOwner]));
    113. TextDrawSetString(GangFight[gw][warDraw][17], string);
    114. format(string, sizeof(string), "{FF9933}[GANGFIGHT] %s (%s) hat Flagge C erobert.", GetName(playerid), GetFrakName(GangFight[gw][warOwner]));
    115. SendFraktionMessage(GangFight[gw][warOwner], COLOR_WHITE, string);
    116. SendFraktionMessage(GangFight[gw][warAttacker], COLOR_WHITE, string);
    117. GangFight[gw][warCaptureTime][2] = 0;
    118. GangFight[gw][warCapturedFlags][2] = Spieler[playerid][pFraktion];
    119. format(string, sizeof(string), "{AFAFAF}Flagge C\n%s\n\n%s", GangFight[gw][warZoneName], GetFrakName(GangFight[gw][warOwner]));
    120. Update3DTextLabelText(GangFight[gw][WarLabel][2], COLOR_WHITE, string);
    121. return 1;
    122. }
    123. return SendClientMessage(playerid, COLOR_WHITE, "{AFAFAF}Diese Flagge gehört bereits deiner Fraktion.");
    124. }
    125. if(Spieler[playerid][pFraktion] == GangFight[gw][warAttacker])
    126. {
    127. if(GangFight[gw][warCapturedFlags][2] == GangFight[gw][warAttacker])
    128. {
    129. GangFight[gw][warAttackerScore] += 1;
    130. format(string, sizeof(string), "~b~%03d", GangFight[gw][warAttackerScore]);
    131. TextDrawSetString(GangFight[gw][warDraw][6], string);
    132. format(string, sizeof(string), "~b~%d", MAX_GANGFIGHTSCORE);
    133. TextDrawSetString(GangFight[gw][warDraw][2], string);
    134. format(string, sizeof(string), "~w~%s", GetFrakName(GangFight[gw][warAttacker]));
    135. TextDrawSetString(GangFight[gw][warDraw][17], string);
    136. format(string, sizeof(string), "{FF9933}[GANGFIGHT] %s (%s) hat Flagge C erobert.", GetName(playerid), GetFrakName(GangFight[gw][warAttacker]));
    137. SendFraktionMessage(GangFight[gw][warAttacker], COLOR_WHITE, string);
    138. SendFraktionMessage(GangFight[gw][warOwner], COLOR_WHITE, string);
    139. GangFight[gw][warCaptureTime][2] = 0;
    140. GangFight[gw][warCapturedFlags][2] = Spieler[playerid][pFraktion];
    141. format(string, sizeof(string), "{AFAFAF}Flagge C\n%s\n\n%s", GangFight[gw][warZoneName], GetFrakName(GangFight[gw][warAttacker]));
    142. Update3DTextLabelText(GangFight[gw][WarLabel][2], COLOR_WHITE, string);
    143. return 1;
    144. }
    145. return SendClientMessage(playerid, COLOR_WHITE, "{AFAFAF}Diese Flagge gehört bereits deiner Fraktion.");
    146. }
    147. return SendClientMessage(playerid, COLOR_WHITE, "{AFAFAF}Du befindest dich an keiner Flagge.");
    148. }
    149. return SendClientMessage(playerid, COLOR_WHITE, "{AFAFAF}Derzeit ist kein Gangfight aktiv!");
    150. }
    151. return 1;
    152. }
    Alles anzeigen

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von Dr. Frauenarzt ()

  • Jeffry schrieb:

    iTsRooT schrieb:

    FallRoom[1]
    Erstellst du alle mit [1], oder zählst du von [0] aus hoch?Normalerweise sollte es klappen, wenn es so aussieht:

    PAWN-Quellcode

    1. FallRoom[0] = CreateObject(...);FallRoom[1] = CreateObject(...);FallRoom[2] = CreateObject(...);//...

    Ne hat sich geklärt habe

    FallRoomD(); unter OnFilterScriptExit aufgerufen doch als ich /rcon unloadfs gemacht habe wurde aber onFilterScriptExit nicht aufgerufen.
    Doch als ich FallRoodD(): in ein befehl eingefügt habe ging es.


    LeonMrBonnie schrieb:

    iTsRooT schrieb:

    //edit

    wird bei /rcon unloadfs OnFilterScriptExit aufgerufen ?
    Ja wird es.
    Bei mir leider nicht


    PAWN-Quellcode

    1. [13:27:19] Number of vehicle models: 0
    2. [13:27:59] [connection] 127.0.0.1:62432 requests connection cookie.
    3. [13:28:00] [connection] incoming connection: 127.0.0.1:62432 id: 0
    4. [13:28:00] [join] RooT has joined the server (0:127.0.0.1)
    5. [13:28:06] RCON (In-Game): Player #0 (RooT) has logged in.
    6. [13:28:08] RCON (In-Game): Player [RooT] sent command: loadfs Fall Event System By RooT
    7. [13:28:08] -------------------------------------------------------------
    8. [13:28:08] Fall Event System By RooT
    9. [13:28:08] Fall Event System Arena Objecte wurden erfolgreich erstellt.
    10. [13:28:08] Fall Event System wurde erfolgreich geladen.
    11. [13:28:08] -------------------------------------------------------------
    12. [13:28:08] Filterscript 'Fall Event System By RooT.amx' loaded.
    13. [13:28:17] RCON (In-Game): Player [RooT] sent command: unloadfs Fall Event System By RooT
    14. [13:28:17] Filterscript 'Fall Event System By RooT.amx' unloaded.
    Alles anzeigen


    Doch das müsste auch kommen

    PAWN-Quellcode

    1. public OnFilterScriptExit()
    2. {
    3. fallmapsd(); //Alle Objecte werden Gelöscht.
    4. fallroomD(); //Arena Objecte werden Gelöscht.
    5. print("-------------------------------------------------------------");
    6. print(" Fall Event System wurde erfolgreich heruntergefahren.");
    7. print("-------------------------------------------------------------");
    8. return 1;
    9. }
  • Ne sieht so aus

    PAWN-Quellcode

    1. #include <a_samp> // a_samp wird geladen
    2. #include <zcmd> //zcmd wird geladen
    3. #include <map1> //Hier sind die objecte der Map1
    4. #include <map2> //Hier sind die objecte der Map2
    5. #define COLOR_ORANGE 0xFF9600FF //Farbe Orange
    6. #define DIALOG_FALL 69 //Dialog des Eventmenüs
    7. #define DIALOG_FALLMAPS 70 //Dialog der Map auswahl
    8. forward fallarenaO(); //FallArena Objecte Stock
    9. new FallRoom[16]; //Fall Arena Objecte
    10. public OnFilterScriptInit()
    11. {
    12. print("-------------------------------------------------------------");
    13. print(" Fall Event System By RooT");
    14. fallroomO(); //Alle FallArena Objecte werden Geladen.
    15. print(" Fall Event System Arena Objecte wurden erfolgreich erstellt.");
    16. print(" Fall Event System wurde erfolgreich geladen.");
    17. print("-------------------------------------------------------------");
    18. return 1;
    19. }
    20. public OnFilterScriptExit()
    21. {
    22. fallmapsd(); //Alle Objecte werden Gelöscht.
    23. fallroomD(); //Arena Objecte werden Gelöscht.
    24. print("-------------------------------------------------------------");
    25. print(" Fall Event System wurde erfolgreich heruntergefahren.");
    26. print("-------------------------------------------------------------");
    27. return 1;
    28. }
    Alles anzeigen
  • Ah ja ohne die funktion geht es. Woran kann das liegen ?

    PAWN-Quellcode

    1. loadfs Fall Event System By RooT------------------------------------------------------------- Fall Event System By RooT Fall Event System Arena Objecte wurden erfolgreich erstellt. Fall Event System wurde erfolgreich geladen.------------------------------------------------------------- Filterscript 'Fall Event System By RooT.amx' loaded.unloadfs Fall Event System By RooT------------------------------------------------------------- Fall Event System wurde erfolgreich heruntergefahren.------------------------------------------------------------- Filterscript 'Fall Event System By RooT.amx' unloaded.



    ehm ich meine ohne FallRoomD geht es