Beiträge von Woozie


    SendClientMessage(playerid,COLOR_BLACK,"~l~SCHWARZ ~y~GELB ~l~SCHWARZ");

    http://wiki.sa-mp.com/wiki/GameTextStyle


    ;)


    PickUp
    Ich habe das bei meinem Autohausmenü so gemacht. (ich habe die Pickupkoordinaten vorher in Variablen gespeichert, bei OnGameModeInit)



    public OnPlayerPickUpPickup(playerid, pickupid)
    {
    for (new temp=0;temp<MAX_PICKUP;temp++)
    {
    if (pickupid==Pickup[temp] && IsPlayerInCircle(playerid,PickupX[temp],PickupY[temp],10))
    {
    switch (temp)
    {
    case 10,39: // Sunshine Autos
    {
    if (userIsInPickup[playerid]==0)
    {
    userIsInPickup[playerid]=1;ShowMenuForPlayer(mnuCarShop,playerid);
    return 1;
    }
    }
    }
    }
    }
    }

    Bei meinem Menü dann nur noch:

    public OnPlayerSelectedMenuRow(playerid, row)
    {
    // ... hier das Menü oder deinen Text als Menü und wenn man dann ENTER drückt, verläßt man das Menü wieder und wird freigelassen
    // ... natürlich kannst du userIsInPickup[playerid] auch erst dann auf 0 setzen, wenn der Radius zum entsprechendem Pickup >10 ist
    // ... somit wird nicht mehr erneut auf das Pickup zugegriffen
    TogglePlayerControllable(playerid,1);userIsInPickup[playerid]=0;return 1;
    }

    Sorry, aber ich gehe davon aus, das man das wissen sollte, wenn man mit PAWN und SA:MP scriptet, da dies zum Grundwissen gehört. Man kann in PAWN Funktionen mit oder ohne "stock" deklarieren. Dies steht übrigens auch im SA:MP Wiki ;)

    Woozi ? Weist du was Da Redest Muss Als Forward und dann Muss unten Irgendwo noch :

    Wofür Forward? Forward machst du nur, wenn du eine Public Funktion benutzt. Wieso muß PlayerToPoint denn Public sein? Mach anstelle von Public einfach stock und gut is. Außerdem benötigt dies etwas weniger Speicherplatz bei der Ausführung.

    1. soweit ich weiß, macht man bei forward kein public Funktionsname
    2. Wieso machst du PlayerToPoint als Public? Wozu?
    3. Die Fehlermeldung besagt, daß er diese Funktion nicht kennt. Du hast sie zwar oben per forward deklariert, aber wahrscheinlich fehlt sie unten im Script


    if (strcmp("/skin_lspd", cmdtext, true, 10) == 0)
    {
    if(IsPlayerAdmin(playerid)){
    SetPlayerSkin( playerid, 280 );
    SetSpawnInfo( playerid, 280, 280, 1525.0475,-1678.9324,5.8906,275.5777, 31, 10000, 25, 10000, 30, 1000 );
    return 1;
    }else return 0;
    }

    Mach bei deinen CMD's das else return 0; weg

    Mal eine Frage an euch: Wieso benutzt ihr eigentlich AddStaticPickup?



    stock GetPlayerDistanceToPoint(playerid,Float:x,Float:y)
    {
    new Float:x1,Float:y1,Float:z1,Float:distance;
    GetPlayerPos(playerid,x1,y1,z1);
    distance=floatsqroot(floatpower(floatabs(floatsub(Float:x,x1)),2)+floatpower(floatabs(floatsub(Float:y,y1)),2));
    return floatround(distance);
    }


    stock IsPlayerInCircle(playerid,Float:x,Float:y,radius)
    {
    if(GetPlayerDistanceToPoint(playerid,x,y)<radius) {return 1;}
    return 0;
    }


    Wird u.a. so abgerufen (Beispiel für Pickup, wie ich das bei mir Abfrage):
    if (IsPlayerInCircle(playerid,PickupX,PickupY,10)) // Radius=10
    {
    ...
    }


    Natürlich kannst du auch GetPlayerDistanceToPoint nutzen!
    Wieso ich diese Funktion neben dem Callback nutze? Es ist sicherer, denn SA:MP bringt ab und an gern die ID's durcheinander ^^


    @AddStaticPickup
    http://wiki.sa-mp.com/wiki/Limits
    Benutzt dynamische, also CreatePickup. Diese könnt ihr auch in der Callback OnPlayerPickupPickup(playerid,pickupid) abfragen!

    Mal deinen TEMP Ordner geleert?
    Unter XP:
    c:\dokumente und einstellungen\deinprofilname\lokale einstellungen\temp


    Vista? K.A. nutze ich net!
    Diesen Ordner sollte man ab und zu leeren (nicht löschen!). Und wenn du ihn leerst, beende SA:MP Client vorher. Einige Dateien werden sich nicht löschen lassen (z.B. ICQ wenn es aktiv ist oder .NET Framework <- ist nur eine einzige Datei).
    Und bringt dies nix, geh ma in deine Eigene Dateien\GTA San Andreas
    dort gibt es eine gta_set... , lösch die mal und starte SA im Singleplayer einmal. Danach versuch es nochmal mit SA:MP!

    //////////////////////////// Los Santos Police Department //////////////////////
    if (strcmp(cmdtext, "/betretenlspd", true, 9)==0)
    {
    if (GetPlayerState(playerid) == 1 && PlayerToPoint(2.0, playerid,1555.5046,-1675.6783,16.1953))
    {
    SetPlayerInterior(playerid, 3);
    SetPlayerPos(playerid,288.7767,169.1552,1007.1719);
    }
    }
    if (strcmp(cmdtext, "/verlassenlspd", true, 9)==0)
    {
    if (GetPlayerState(playerid) == 1 && PlayerToPoint(2.0, playerid,288.7909,166.9683,1007.1719))
    {
    SetPlayerInterior(playerid, 0);
    SetPlayerPos(playerid,1553.8743,-1675.6884,16.1953);
    }
    return 1;
    }
    //----------------------------------------------------------------------------//

    nach Zeile 8 würde ich dir ein
    Return 1;
    empfehlen ;)


    Dann änder mal
    if (strcmp(cmdtext, "/betretenlspd", true, 9)==0)

    denn hier fragt er nur "/betreten" ab und lspd fehlt
    Also korrekt muß es so aussehen
    if (strcmp(cmdtext, "/betretenlspd", true, 13)==0)

    if (strcmp(cmdtext, "/verlassenlspd", true, 14)==0)

    Es gibt schon ein Godfather Bereich! Ist ein Unterforum von Scripting Base!
    Übrigens bin ich 13 ;D

    Autsch, hab ich total übersehen. Muß wohl daran liegen, daß ich letzte Nacht mal ausgiebiger im Scriptbereich unterwegs war und einige GF basierte Dinge fand. Sorry.
    @Thema nochma
    Es kommt eigentlich nicht auf das Alter an, sondern auf das Verhalten. Bei uns gibt es auch Leute, die sind <18, benehmen sich aber wie >20 (also die meiste Zeit total korrekt). Man sollte die Leute nicht nach ihrem Alter messen, vielmehr nach ihrer Schreibweise.

    Hallo,
    ich erst seit gestern bei euch angemeldet und war vorher schon ab und zu mal als Gast da. Zum Thema kann ich nur schmunzeln, denn wir haben genau das gleiche Problem. Schlimm ist es jetzt ganz besonders, da wir ja den GTA United MOD miteinbeziehen. Und was die Rechtschreibung angeht, so kann ich hier nur den gleichen Tipp geben wie bei uns.


    denken -> schreiben -> durchlesen -> denken -> korrigieren -> durchlesen -> Button "Abschicken" betätigen -> ggf. erneut durchlesen und korrigieren ^^


    Nichts destotrotz, laßt euch nicht unterkriegen. Wie wäre es mit einer Extrarubrik für Godfather? Wer nix mit GF zutun haben will (wie ich z.B.) geht einfach nicht in diese Rubrik rein ;).


    gruß
    Woozie


    public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
    if (newkeys==KEY_SECONDARY_ATTACK) // <-- ist ENTER bzw. Auto ein-/aussteigen
    {
    if (PlayerToPoint(2.0, playerid, 1481.0464, -1772.2834, 18.7958)) // Stadthalle Eingang
    {
    SetPlayerPos(playerid, 387.5807, 173.7764, 1008.3828);
    SetPlayerInterior(playerid, 3);
    GameTextForPlayer(playerid, "~y~Willkommen in der Stadthalle", 5000, 5);
    }
    if (PlayerToPoint(2.0, playerid, 390.6798, 173.8207, 1008.3828)) //Stadthalle Ausgang
    {
    SetPlayerPos(playerid, 1481.0917, -1770.3832, 18.7958);
    }
    return 1;
    }
    }

    Nun, die Meldungen sind eigentlich ersichtlich:
    In der Zeile 305 rufst du
    1. eine Funktion auf, die es so nicht gibt
    2. ; anstelle von ) erwartet - dies könnte durch diese Funktion passiert sein. Evtl. hast du anstelle von variable[var] variable(var) gemacht ;)


    Sollte es dies nicht sein, poste doch mal deine Zeile 305 hier.