[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
  • Zitat

    Ich habe ein Filterscript und wollte dem Spieler eine PVar verpassen. Kann ich diese dann im Gamemode abfragen?

    Ja pVars werden auf nen Spieler gesetzt also sollte es auch gehen.

  • Ja, hier wäre so ein Codeschnipsel:


    ocmd:me(playerid,params[])
    {
    new string[120],text[111];
    new Float:x,Float:y,Float:z;
    GetPlayerPos(playerid,x,y,z);
    if(sscanf(params,"s",text)) return SendClientMessage(playerid,blau,"Benutzung: /me [Text]");
    format(string,sizeof(string),"**%s %s**",SpielerName(playerid),text);
    for(new i = 0;i<MAX_PLAYERS;i++)
    {
    if(IsPlayerInRangeOfPoint(i,10,x,y,z))
    {
    SendClientMessage(i,violett,string);
    }
    }
    return 1;
    }

    Back to the roots!

  • wie mache ich das hier ein radius von 30.0 eingehalten wird?


    public OnPlayerText(playerid, text[])
    {
    new str[64], Name[MAX_PLAYER_NAME];
    GetPlayerName(playerid, Name, sizeof(Name));
    format(str, 64, "%s sagt: %s",Name,text);
    SendClientMessageToAll(0xFFFFFFAA, str);
    SetPlayerChatBubble(playerid, text, 0xFF0000FF, 40.0, 10000);
    return 0;
    }


    habe es versucht mit den /me zu verschmelzen aber vergebens

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Bei einer Schleife würde ich immer erst checken, ob der Spieler überhaupt existiert, sonst fragt er ja unnötig 500x ab...


    new float:x, float:y, float:z;
    GetPlayerPos(playerid,x,y,z);
    for(new i=0;i<=MAX_PLAYERS;i++) {
    if(IsPlayerConnected(i) && !IsPlayerNPC(i)) {
    if(IsPlayerInRangeOfPoint(i,30.0,x,y,z)) {
    SendClientMessage(i,FARBE,text);
    }
    }
    }

  • hey,


    Habe 2 Erros bei OnGameModeInti



    C:\Users\Mark\Desktop\Eigen Script\gamemodes\eigen.pwn(24) : warning 217: loose indentation
    C:\Users\Mark\Desktop\Eigen Script\gamemodes\eigen.pwn(33) : warning 217: loose indentation
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    2 Warnings.



    public OnGameModeInit()
    {
    // Don't use these lines if it's a filterscript
    SetGameModeText("Blank Script");
    AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);


    //Spawn Hotel LS


    CreateObject(971, 308.39999389648, -1559.8000488281, 31.39999961853, 0, 0, 322.25);
    tor=CreateObject(971, 365.099609375, -1469.3994140625, 31.39999961853, 0, 0, 38.995971679688);
    //Autos
    AddStaticVehicle(598,295.3022,-1541.0171,24.3399,52.8358,0,1); // LVPD
    AddStaticVehicle(560,291.6244,-1545.2196,24.2994,54.1754,21,1); // SULTAN
    AddStaticVehicle(560,282.3075,-1531.9871,24.2988,51.7202,21,1); // SULTAN
    AddStaticVehicle(560,284.3021,-1527.4121,24.2982,235.0701,21,1); // SULTAN
    AddStaticVehicle(560,288.6419,-1522.0557,24.2990,54.8554,21,1); // SULTAN
    AddStaticVehicle(560,293.6925,-1519.2534,24.2991,233.2932,21,1); // SULTAN
    return 1;
    }


    danke wenn mir einer Helfen kann

  • Hey,

    Code
    Zeile (313) : Nicht deklarierte (forward) Funktion : ("Krankenhaus")


    Was soll das bedeuten?
    Ich weiß nicht, was ich damit nafangen soll..
    oben noch ein #forward Krankenhaus oder wie!?


    ich denke du hast einen public function erstellt ohne diese zu deklarieren mit "forward". "#forward" wäre allerdings falsch, schau am Besten mal hier: http://wiki.sa-mp.com/wiki/Public_functions


    EDIT: Sorry, falsch geschaut, wurde natürlich bereits beantwortet.

  • Hallo mein Problem ist, dass ich sobald ich ne If Anfrage einfüge direkt 26 Errors habe. Ob ich diese richtig engefügt habe, weiß ich jedoch nicht.


    Desweiteren sollte ne Meldung kommen, wenn man kein Cop ist "Du bist kein Cop du darfst diesen Befehl nicht nutzen".


    Wie bekomme ich ne If Abfrage rein das dieses nur die Variable IsACop nutzen kann ?


    if(strcmp(cmdtext, "/blcop", true) == 0)
    {
    if(UCL[GetPlayerVehicleID(playerid)] == 0)
    {
    new tmpcar = GetPlayerVehicleID(playerid);
    if(GetVehicleModel(tmpcar) == 560)
    {
    sirene[GetPlayerVehicleID(playerid)] = CreateObject(19288,0,0,0,0,0,0,100);
    sirene1[GetPlayerVehicleID(playerid)] = CreateObject(18646,0,0,0,0,0,0,100);
    sirene2[GetPlayerVehicleID(playerid)] = CreateObject(19288,0,0,0,0,0,0,100);
    sirene3[GetPlayerVehicleID(playerid)] = CreateObject(19288,0,0,0,0,0,0,100);
    sirene4[GetPlayerVehicleID(playerid)] = CreateObject(19292,0,0,0,0,0,0,100);
    AttachObjectToVehicle(sirene[GetPlayerVehicleID(playerid)],GetPlayerVehicleID(playerid),0 ,2.6,0,0,0,0);//Vorne Mitte
    AttachObjectToVehicle(sirene1[GetPlayerVehicleID(playerid)],GetPlayerVehicleID(playerid),-0.5,0.0,0.85,0,0,0);//Dach sirene
    AttachObjectToVehicle(sirene2[GetPlayerVehicleID(playerid)],GetPlayerVehicleID(playerid),0.7,2.6,0,0,0,0);//Vorne Licht Beifahrerseite
    AttachObjectToVehicle(sirene3[GetPlayerVehicleID(playerid)],GetPlayerVehicleID(playerid),-0.7,2.6,0,0,0,0);//Vorne Licht Fahrerseite
    AttachObjectToVehicle(sirene4[GetPlayerVehicleID(playerid)],GetPlayerVehicleID(playerid),0,0.9,0.4,0,0,0);//Mittig im Fenster
    UCL[GetPlayerVehicleID(playerid)] = 1;
    return 1;
    }


    //Edit aus der 6 ne 26 gemacht

  • Ich habe folgendes Problem undzar ich habe ein Ban und Kick Befehl mit ocdm erstellt und da tauchen folgende Fehler/strings auf ..


    Ich habe den Kick Befehl zuerst gemacht und dann kopiert und in ocmd:ban(playerid,params[]) dann nochmal eingefügt und bisschen bearbeitet ..



    Ich würd gern wissen was ich besser machen kann.. also was ich bearbeiten soll damit ich die Errors/Warnings weg bekomme :)


    Grüße
    c47

    Hier der ocmd Ban befehl.


    ocmd:ban(playerid,params[]);{ if(!isPlayerAnAdmin(playerid,1))return SendClientMessage(playerid,DUNKELROT,"Du bist kein Admin."); new pID,reason[128],string[128]; if(sscanf(params, "us",pID,reason))return SendClientMessage(playerid,HELLGRAU,"Benutze: /ban [ID/Name] [Grund]"); format(string,sizeof(string)," %s wurde von %s gebannt. Grund: %s",SpielerName(pID),SpielerName(playerid),reason); SendClientMessageToAll(ORANGE,string); SetPVarInt(pID,"Baned",1); Kick(pID); return 1;}

    Demokratie: Das ist, wenn zwei Wölfe und ein Lamm abstimmen, was es zum Lunch geben soll. Freiheit ist ein bewaffnetes Lamm, das die Abstimmung anficht.

    c47


    Private Message


    Skype: c47...


    ->Klick<-



    Einmal editiert, zuletzt von c47 ()

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen