[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
  • Hey, kann mir vielleicht jemand mal eben eine Funktion erstellen, die folgendes beinhalten soll:


    SetPlayerPos
    SetPlayerVirtualWorld
    Und SetPlayerInterior


    Wäre nett von euch wenn es einer mal eben machen kann, so würd ich dann nämlcih ca 5000 zeilen sparen :D


  • stock SetPos(playerid,Float:x,Float:y,Float:z,virtualworld,interior)
    {
    SetPlayerPos(playerid,x,y,z);
    SetPlayerVirtualWorld(playerid,virtualworld);
    SetPlayerInterior(playerid,interior);
    return 1;
    }
    dann kannste es so benutzen:
    SetPos(playerid,X,Y,Z,Virtualworld,Int-ID);


    //EDIT: Code verbessert

  • stock SetPos(playerid,Float:x,Float:y,Float:z,virtualworld,interior){ SetPlayerPos(playerid,x,y,z); SetPlayerVirtualWorld(playerid,virtualworld); SetPlayerInterior(playerid,interior);
    }
    muss das nicht so sein?

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

  • Wieso so Ressourcen Feindlich..
    ocmd:explode(playerid,params[])
    {
    new pID, Float:boom[3];
    if(sscanf(params, "u",pID)) return SendClientMessage(playerid, FARBE_ROT, "Funktion: /explode [Playerid]");
    GetPlayerPos(pID,boom[0], boom[1], boom[2]);
    CreateExplosion(boom[0], boom[1] , boom[2], 7, 10);//7 ist der TYP und 10
    return 1;
    }

    So geht das :)
    Hoffentlich benutzt du auch OCMD^^

  • public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
    {
    if(IsPlayerInAnyVehicle(playerid))
    {
    if(newkeys == KEY_FIRE)
    {
    new Float:vX, Float:vY, Float:vZ, Float:vA;
    new Arabam = GetPlayerVehicleID(playerid);
    GetVehicleZAngle(Arabam, vA);
    GetVehicleVelocity(Arabam,vX,vY, vZ);
    SetVehicleVelocity(Arabam, vX*1.5, vY*1.5, vZ*1.5);
    }
    }
    }


    Warum muss ich W loslassen, damit diese Funktion funktioniert?



    62.75.218.75:7778


    Bitte testen :)

  • public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
    {
    if(IsPlayerInAnyVehicle(playerid))
    {
    if(newkeys & KEY_FIRE)
    {
    new Float:vX, Float:vY, Float:vZ, Float:vA;
    new Arabam = GetPlayerVehicleID(playerid);
    GetVehicleZAngle(Arabam, vA);
    GetVehicleVelocity(Arabam,vX,vY, vZ);
    SetVehicleVelocity(Arabam, vX*1.5, vY*1.5, vZ*1.5);
    }
    }
    }


    Richtig nach Tasten überprüfen ;)

  • Danke :) noch eine Frage:


    if(strcmp("/tuneg", cmdtext, true, 10) == 0)
    {
    if(IsPlayerInAnyVehicle(playerid))
    {
    if(IsPlayerInRangeofPoint(playerid,3.0,797.6604,-618.7686,16.3359))
    {
    new zufall2 = random(4);
    if(zufall2 == 1)
    {
    AddVehicleComponent(GetPlayerVehicleID(playerid),1008);
    AddVehicleComponent(GetPlayerVehicleID(playerid),1075);
    ChangeVehicleColor(GetPlayerVehicleID(playerid),000,000);
    GivePlayerMoney(playerid,-750);
    GameTextForPlayer(playerid,"Vehicle getuned!",3000,1);
    }
    else if(zufall2 == 2)
    {
    AddVehicleComponent(GetPlayerVehicleID(playerid),1008);
    AddVehicleComponent(GetPlayerVehicleID(playerid),1078);
    ChangeVehicleColor(GetPlayerVehicleID(playerid),001,000);
    GivePlayerMoney(playerid,-750);
    GameTextForPlayer(playerid,"Vehicle getuned!",3000,1);
    }
    else if(zufall2 == 3)
    {
    AddVehicleComponent(GetPlayerVehicleID(playerid),1008);
    AddVehicleComponent(GetPlayerVehicleID(playerid),1074);
    ChangeVehicleColor(GetPlayerVehicleID(playerid),180,003);
    GivePlayerMoney(playerid,-750);
    GameTextForPlayer(playerid,"Vehicle getuned!",3000,1);
    }
    else if(zufall2 == 4)
    {
    AddVehicleComponent(GetPlayerVehicleID(playerid),1008);
    AddVehicleComponent(GetPlayerVehicleID(playerid),1073);
    ChangeVehicleColor(GetPlayerVehicleID(playerid),006,183);
    GivePlayerMoney(playerid,-750);
    GameTextForPlayer(playerid,"Vehicle getuned!",3000,1);
    }
    }
    }
    }


    C:\DOKUME~1\...\Desktop\SCRIPT~1\R~1\GAMEMO~1\bla.pwn(528) : error 017: undefined symbol "IsPlayerInRangeofPoint"


    Was ist daran ein undefiniertes Symbol?!



    62.75.218.75:7778


    Bitte testen :)

    2 Mal editiert, zuletzt von Kempert ()

  • Aber der Befehl hat vorher bei anderen Commands auch schon funktioniert?!


    EDIT:


    Naja egal habs jetzt anders hinbekommen.


    Neue Frage:


    if(IsPlayerInRangeOfPoint(playerid,4.0,797.6604,-618.7686,16.3359))
    {
    GameTextForPlayer(playerid,"/tuneg zum tunen deines Fahrzeuges!",5000,1);
    }


    Wo muss das hin ins Script, damit der GameText kommt, wenn ich an einer bestimmten Stelle(797.6604,-618.7686,16.3359) bin?



    62.75.218.75:7778


    Bitte testen :)

    2 Mal editiert, zuletzt von Kempert ()

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