[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
  • Damit in der Skinauswahl nen Sound kommt habe ich das dort reingeschrieben.


    Code
    PlayerPlaySound(playerid, 1187, 0.0, 0.0, 0.0);


    Und nun zu meiner frage. Wie beende ich den Sound wieder wenn der Skin ausgewählt ist?


    Kommt ihrgendwer weiß das doch bestimmt :thumbup:

    Einmal editiert, zuletzt von Dev ()

  • Wenn du die Sound ID 1069 benutzt müsste es aufhören glaube ich

  • public checkparea(playerid)
    {
    if(IsPlayerInRangeOfPoint(playerid, 20.0, -2127.45605469,-81.21141052,36.84370422)) // 10.0 ist der Radius
    {
    new Float:TempX, Float:TempY, Float:TempZ;
    GetPlayerPos(playerid, TempX, TempY, TempZ);
    if(gTeam[playerid] == TEAM_ADAC)
    {
    if(TempX == PosX[playerid] && TempY == PosY[playerid] && TempZ == PosZ[playerid])
    {
    }
    else
    {
    GetPlayerPos(playerid, PosX[playerid], PosY[playerid], PosZ[playerid]);
    MoveObject(ADACTor, -2127.45605469,-81.21093750,30.09370422, 2.5);
    MoveObject(PolizeiTor,-1629.89123535,687.87371826,6.90434265,2.5);
    SetTimer("closegate", 8000, 0);
    }
    }
    }
    if(IsPlayerInRangeOfPoint(playerid, 20.0, -1629.89123535,687.87371826,7.90434265)) // 10.0 ist der Radius
    {
    new Float:TempX, Float:TempY, Float:TempZ;
    GetPlayerPos(playerid, TempX, TempY, TempZ);
    if(gTeam[playerid] == TEAM_ADAC)
    {
    if(TempX == PosX[playerid] && TempY == PosY[playerid] && TempZ == PosZ[playerid])
    {
    }
    else
    {
    GetPlayerPos(playerid, PosX[playerid], PosY[playerid], PosZ[playerid]);
    MoveObject(PolizeiTor,-1629.89123535,687.87371826,6.90434265,2.5);
    SetTimer("closegate", 8000, 0);
    }
    }
    }

    return 1;
    }


    müsste das nicht eigentlich funktionieren?
    Beim ADAC funktionierts beim Polizist nicht


    //edit: fehler im pawncode

  • Hey leute!


    Habe eine wichtige Frage zum scripten,von Toren mit Timer!


    Folgendes:Momentan scripte ich ein paar Tore bei der Area 51.
    Manche kennen die area sehr gut,andere eher weniger gut.


    Da gibt es diese Hangar.Da wollte ich pro Hangar 2Tore neben einander gleichzeitig und mit einen Commando öffnen!


    Nun weiss ich nicht wie das genau funzt.



    Noch mal zum Mitschreiben:


    -2 Tore die nebeneinander
    -mit einem CMD z.B.: /gate gleichzeitig bewegen lassen



    THX im vorraus

  • Ist doch nix anderes als ein Tor.


    Erstellst halt zwei tore


    const maxtor = 2;
    new tor[2];


    tor[1] = CreateObject...
    tor[1] = CreateObject...


    Dann in deinem Befehl bewegst du einfach beide Tore


    if(strcmp(...../gate......)
    {
    for(new i = 0;i<maxtor;i++)
    {
    MoveObjec(tor[i],.......
    }
    SendClientMessage(playerid,farbe,"Das Tor am Hangar blubb wurde geöffnet und bleibt 5 Sekunden offen");
    SetTimer("closetor",5000,0);
    return 1;
    }


    Hier ist es jetzt per Array und ner For-loop gelöst, kannst natürlich auch beide tore einzen ohne Schleife bewegen oder die komplett ohne array machen, sprich einfach tor1 und tor2 nennen.


    Um dann die Tore wieder zu schließen:


    forward closetor();


    public closetor()
    {
    for(new i = 0;i<maxtor;i++)
    {
    MoveObjec(tor[i],.......
    }
    return 1;
    }

  • hi, ein paar aben doch gesagt das man keinen objekt streamer braucht, bei 0.3b


    aber ohne werden maximal nur 400 objekte geladen, habe ganz hinten bei den objekten noch ,300


    hab ich da was falsch verstanden mit, geht ohne objekt streamer ?

  • Nein das Maximale Limit liegt im gesamten bei 400 Objekten also braucht man doch einen Streamer damit die Objekte
    auch so erstellt werden das sie nur für den Moment existieren wo sich der Spieler in ihrer Nähe befindet sprich sind mit einem
    Streamer 400 Objekte verfügbar in einem Umkreis in dem sich der Spieler befindet.

    Mfg. BlackFoX_UD_ alias [BFX]Explosion


  • allso ist das neue, die distance einstellung überflüssig, für die die ein objectstreamer benutzten

    Ich bin mir zwar nicht sicher aber ich denke das hat was mit dem Limit zu tun, bisher wurde aber auch nichts genaueres erwähnt und
    das Limit besagt das Global 400 Objekte verfügbar sind die entweder für alle sichtbar sind oder halt 400 Spieler Objekte je Spieler versteht sich.


    Zu der Sache mit den Tasten, diese sind nicht fest belegt auf eine bestimmte Taste sondern werden abgerufen durch die jeweiligen Aktionen,
    z.b. springen bei mir belegt auf Shift sag ich mal so frage ich KEY_JUMP ab sprich immer die Aktion springen die ich mit der jeweiligen im Spiel
    belegten Taste abrufe, bestimmte Tasten wirst du nicht abrufen können, ich bin mir nicht sicher aber KEY_JUMP sollte auch die Hupe des Autos sein sprich
    diese wäre bei mir ebenfalls Shift gewesen.

    Mfg. BlackFoX_UD_ alias [BFX]Explosion


  • Public´s braucht man, wenn man die per Timer aufrufen lässt, Stock sind nicht über Timer abrufbar


    dcmd_createbarrel(playerid, params[])
    {
    new Float:x,Float:y,Float:z;
    if(sscanf("fff",x,y,z)) return 1;

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