[SAMMELTHREAD] Kleine Scripting Fragen

Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • ben


    variable erstellen:
    new isafk[MAX_PLAYERS];


    so, sobald jetzt einer /afk eingibt setzt du du die variable auf 1:


    isafk[playerid]=1;


    und wenn jetzt einer /afklist eingibt, machste ne for-schleife, die alle spieler durchgeht, und wenn bei eimem spieler isafk=1 ist schreibtste den namen einfach in den chat.

    Keine Scripting-Fragen per PM!

  • Hallo an alle.


    Ich wollte das man auch als bei Fahrer in ein boot steigen kann.
    Jetzt habe ich das problem das wenn man einsteigen will in irgend ein fahrzeug sovort in ein Boot kommt.
    Habe das under OnPlayerEnterVehicle rein gemacht.
    Und ist es normal das man als bei fahrer unsichtbar ist????



    PutPlayerInVehicle(playerid, boat1, 0);


    PutPlayerInVehicle(playerid, boat1, 1);

    PutPlayerInVehicle(playerid, boat1, 2);

    PutPlayerInVehicle(playerid, boat1, 3);


    PutPlayerInVehicle(playerid, boat2, 0);


    PutPlayerInVehicle(playerid, boat2, 1);


    PutPlayerInVehicle(playerid, boat2, 2);


    PutPlayerInVehicle(playerid, boat2, 3);

    PutPlayerInVehicle(playerid, boat3, 0);


    PutPlayerInVehicle(playerid, boat3, 1);


    PutPlayerInVehicle(playerid, boat3, 2);


    PutPlayerInVehicle(playerid, boat3, 3);

    PutPlayerInVehicle(playerid, boat4, 0);


    PutPlayerInVehicle(playerid, boat4, 1);


    PutPlayerInVehicle(playerid, boat4, 2);


    PutPlayerInVehicle(playerid, boat4, 3);

    PutPlayerInVehicle(playerid, boat5, 0);


    PutPlayerInVehicle(playerid, boat5, 1);


    PutPlayerInVehicle(playerid, boat5, 2);


    PutPlayerInVehicle(playerid, boat5, 3);


    return 1;

    WEGEN MEINER RECHTSCHREIBUNG MÖCHTE ICH MICH ENDSCHULDIGEN ICH BIN LEGASTENIGER!!!!!!!!!!!!!

  • Hey leutz, ich habe mal ne frage.


    Ich möchte das wen ein Name übereinstimmt, das dan etwas geschieht, ich hab es so gemacht :



    new pName[MAX_PLAYER_NAME];
    GetPlayerName(playerid,pName,sizeof(pName));


    if (pName == NAME)
    {
    SetPlayerPos(playerid, -2831.066406, 384.971191, 5.753489);
    SetPlayerInterior(playerid,3);
    PlayerInfo[playerid][pInt] = 3;
    SetCameraBehindPlayer(playerid);
    return 1;
    }
    if (pName == NAME)
    {
    SetPlayerPos(playerid, -2829.664063, 418.276337, 5.066395);
    SetPlayerInterior(playerid,3);
    PlayerInfo[playerid][pInt] = 3;
    SetCameraBehindPlayer(playerid);
    return 1;
    }
    if (pName == NAME)
    {
    SetPlayerPos(playerid, -2763.255615, 444.777405, 3.567276);
    SetPlayerInterior(playerid,3);
    PlayerInfo[playerid][pInt] = 3;
    SetCameraBehindPlayer(playerid);
    return 1;
    }


    Nur er will von mir die Namen definiert haben.


    dh. :


    C:\DOKUME~1\Daniel\Desktop\test.pwn(2864) : error 017: undefined symbol "NAME"
    C:\DOKUME~1\Daniel\Desktop\test.pwn(2872) : error 017: undefined symbol "NAME"
    C:\DOKUME~1\Daniel\Desktop\test.pwn(2880) : error 017: undefined symbol "NAME"


    Soll ich sie defninieren, oder wie soll ich das machen ?

    Einmal editiert, zuletzt von xivo ()

  • if(!strcmp(pname,"dein name"))


    das hier


    if(pname == "deinname")


    klappt nicht da diese Art von vergleichen leider nicht unterstützt wird,
    Pawn überprüft die Zellen miteinander bzw. die Struktur der Zellen.

    Mfg. BlackFoX_UD_ alias [BFX]Explosion


  • Was ist bitteschön hier dran falsch ?


    for(new playerid = 0; playerid < MAX_PLAYERS; playerid++)
    {
    SkinauswahlCops[playerid] = TextDrawCreate(95.000000,8.000000,"Angehörendem Team : Polizei...");
    TextDrawUseBox(SkinauswahlCops[playerid],1);
    TextDrawBoxColor(SkinauswahlCops[playerid],0x00000033);
    TextDrawTextSize(SkinauswahlCops[playerid],602.000000,0.000000);
    TextDrawAlignment(SkinauswahlCops[playerid],0);
    TextDrawBackgroundColor(SkinauswahlCops[playerid],0x000000ff);
    TextDrawFont(SkinauswahlCops[playerid],1);
    TextDrawLetterSize(SkinauswahlCops[playerid],0.299999,1.400000);
    TextDrawColor(SkinauswahlCops[playerid],0xffffffff);
    TextDrawSetOutline(SkinauswahlCops[playerid],1);
    TextDrawSetProportional(SkinauswahlCops[playerid],1);
    TextDrawSetShadow(SkinauswahlCops[playerid],1);
    }


    Edit : Habs schon raus, war ein kleiner Fehler :D Danke trozdem 1

  • ich hab errors bitte um hilfe ;D
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\gamemodes\script von martin.pwn(121) : error 017: undefined symbol "pInfo"
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\gamemodes\script von martin.pwn(121) : warning 215: expression has no effect
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\gamemodes\script von martin.pwn(121) : error 001: expected token: ";", but found "]"
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\gamemodes\script von martin.pwn(121) : error 029: invalid expression, assumed zero
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\gamemodes\script von martin.pwn(121) : fatal error 107: too many error messages on one line

    Und hier mein Script zumindest ein Teil =)
    Des hab ich oben:
    #pragma unused ret_memcpy


    #include <a_samp>
    #include <dini>
    #include <Dudb>


    #if defined FILTERSCRIPT


    enum Info
    {
    passwort[128],
    alevel,
    autos,
    boot,
    flug,
    fRank,
    gTeam,
    gLeader,
    skin,
    };


    new pInfo[MAX_PLAYERS][Info];


    new bool:loggedin[MAX_PLAYERS];



    Und des unten <.<
    public OnPlayerConnect(playerid)
    {
    new playername[MAX_PLAYERS];
    new name[128], save[128]; // Dies machen wir um den Namen vom Spieler aufzuschreiben || Hiermit können wir sagen, dass etwas gespeichert werden soll
    GetPlayerName(playerid,name,sizeof(name)); // Dies sagt, er soll( vom Spieler, den namen, in der größe name aufschreiben)
    format(save,sizeof(save),"/Spieler/%s.ini",name); // Hiermit machen wir ein Format, dass er es im Scriptfile Ordner im Ordner Spieler anlegen soll. Durch GetPlayerName haben wir jetzt den Namen. Jetzt speichert er es in *Name*.ini .
    if(dini_Exists(save))
    {
    SendClientMessage(playerid, COLOR_YELLOW, "*** Willkommen Zurück, Logge dich mit /login [Passwort] ein");
    GivePlayerMoney(playerid,dini_Int(save,"Geld"));
    SetPlayerWantedLevel(playerid,dini_Int(save,"Wanteds"));
    SetPlayerSkin(playerid,dini_Int(save,"Skin"));
    pInfo[playerid][autos] =dini_Int(save,"Autoführerschein");
    pInfo[playerid][flug] =dini_Int(save,"Flugführerschein");
    pInfo[playerid][boot] =dini_Int(save,"Bootsführerschein");
    pInfo[playerid][alevel] =dini_Int(save,"Adminlevel");
    pInfo[playerid][fRank] =dini_Int(save,"Fraktionsrank");
    }
    else
    {
    if(!dini_Exists(save))
    {
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "~Du bist noch neu, Registrier dich mit /register [Passwort]~");
    }
    }
    return 1;
    }

    Und der error ist immer in der Zeile mit dem Autoführerschein =)
    Danke schonmal :>

  • #if defined FILTERSCRIPT



    #else



    #endif



    da Filterscript nicht definiert wurde wird der Bereich bis (else) also andernfalls einfach abgegrenzt , wenn andernfalls nicht vorhanden bis (endif) Ende der Abfrage,
    wenn ja wird der Bereich einbezogen & der Bereich von (else) andernfalls bis (endif) Ende der Abfrage wird erst einbezogen solange die Abfrage Falsch wiedergibt, wenn
    sie Wahr wiedergibt wird jedoch der Bereich bis (else) einbezogen , der andere wird ignoriert , sprich nicht in den Compiler Stack geschmissen deshalb
    werden nur die Bereich verarbeitet die auch vorhanden sind & so kommt es dazu da FILTERSCIPT nicht definiert ist & die Variablen sich dazwischen befinden
    einfach ignoriert werden, der andere Bereich wo du die Variablen anwendest erkennt dies als nicht definiert da die Variablen nicht existieren & vom
    Präprozessor nicht in den Stack geschmissen wurden.


    Ich hoffe du verstehst mich nun.

    Mfg. BlackFoX_UD_ alias [BFX]Explosion


  • ok ich hab gecheckt was du meinst =)
    aber wie behebe ich die errors??
    nach meinem #if defined FILTERSCRIPT
    kommt auch ein #else und #endif, nach einem befehl =)
    aber einfach aus dem#if defined FILTERSCRIPT einfach ein #defined FILTERSCRIPT zu machen geht net
    und unter des #endif ein #defined FILTERSCRIPT machen geht auch net, weil da zuviele errors kommen..
    also wie kann ich den fehler beheben??

  • hab ich gemacht :D
    aber jetzt kommen diese errors <.<
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(41) : error 031: unknown directive
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(129) : error 017: undefined symbol "groovezone"
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(145) : error 001: expected token: ";", but found "-identifier-"
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(145) : error 017: undefined symbol "SencClientMessage"
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(146) : error 001: expected token: ";", but found "return"
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(151) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(152) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(153) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(154) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(155) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(156) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(157) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(158) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(159) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(160) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(161) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(162) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(166) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(167) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(168) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(169) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(170) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(171) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(172) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(173) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(174) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(175) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(176) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(177) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(178) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(179) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(180) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(181) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(182) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(183) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(184) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(185) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(186) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(187) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(192) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(193) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(194) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(195) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(196) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(197) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(198) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(199) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(200) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(201) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(202) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(203) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(224) : error 017: undefined symbol "strget"
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(232) : error 017: undefined symbol "strget"
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(246) : error 017: undefined symbol "strget"
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(254) : error 017: undefined symbol "strget"
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(268) : warning 217: loose indentation
    C:\Dokumente und Einstellungen\Marco & Stefan\Desktop\GTA-San\Scrpit dinger\script von martin.pwn(220) : warning 204: symbol is assigned a value that is never used: "gegner"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
    9 Errors.

  • zeile 41 , hast du die Makroangabe für den Präprozessor vergessen zu löschen ? sonst erwartet das Ding einen Befehl im Moment ist es ein Unbekannter.
    zeile 129 - 145 , hast bestimmt irgendwas vergessen ( Semikolon eventl. )


    strtget ist übrigens nicht definiert



    101 bis 203 = Falsche Angabe der Argumente sprich entweder zu viele Parameter oder zu wenig für die jeweilige Funktion.

    Mfg. BlackFoX_UD_ alias [BFX]Explosion


  • Hallo Community,
    Ich hab mir einen Server erstellt.
    Da hab ich ca. 20Skins,
    Nun hätte ich gerne gewusst, wie die Angezeigt werden?
    Also wenn ich mich einlogge, kann ich ja Skins auswählen, jedoch werden die nicht angezeigt.
    Also muss ich "blind" einen wählen.
    Was muss ich machen damit man die Skins sieht?

  • Hey leute, ich habe ein Problem.


    new auf1[MAX_PLAYERS];
    new auf2[MAX_PLAYERS];
    new auf3[MAX_PLAYERS];


    mit den Befehlen, mache ich halt auf und zu.


    if (PlayerToPoint(3, playerid, -2829.664063, 418.276337, 5.066395))
    {
    new pName[MAX_PLAYER_NAME];
    GetPlayerName(playerid,pName,sizeof(pName));
    if(!strcmp(pName,"Giuseppe"))
    {
    if(auf3[playerid] == 0)
    {
    auf3[playerid] = 1;
    SendClientMessage(playerid,0xFFFFFFF,"Haus aufgeschlossen!");
    }
    else if(auf3[playerid] == 1)
    {
    auf3[playerid] = 0;
    SendClientMessage(playerid,0xFFFFFFF,"Haus zugeschlossen!");
    return 1;
    }
    }
    }


    ... Nun bekomme ich die meldungen


    C:\DOKUME~1\Daniel\Desktop\Eltor.pwn(13612) : error 033: array must be indexed (variable "auf1")
    C:\DOKUME~1\Daniel\Desktop\Eltor.pwn(13628) : error 033: array must be indexed (variable "auf2")
    C:\DOKUME~1\Daniel\Desktop\Eltor.pwn(13644) : error 033: array must be indexed (variable "auf3")


    Wen ich Max_Players rausnehme, dan bekomme ich Errormeldungen von den Zeilen... ?


    Hat jemand eine Ahnung, wo dran es liegen könnte ?

    2 Mal editiert, zuletzt von xivo ()

  • Ich habs mal richtig eingerückt, bei mir kommen keine Warnings oder Errors:



    new auf1[MAX_PLAYERS], auf2[MAX_PLAYERS], auf3[MAX_PLAYERS];
    //
    if (IsPlayerInRangeOfPoint(playerid,3, -2829.664063, 418.276337, 5.066395))
    {
    new pName[MAX_PLAYER_NAME];
    GetPlayerName(playerid,pName,sizeof(pName));
    if(!strcmp(pName,"Giuseppe"))
    {
    if(auf3[playerid] == 0)
    {
    auf3[playerid] = 1;
    SendClientMessage(playerid,0xFFFFFFF,"Haus aufgeschlossen!");
    }
    else if(auf3[playerid] == 1)
    {
    auf3[playerid] = 0;
    SendClientMessage(playerid,0xFFFFFFF,"Haus zugeschlossen!");
    return 1;
    }
    }
    }


    //edit: Ok Forum hats dann wieder falsch eingerückt...