Beiträge von CutX

    hehe ^^


    if(SpielerInfo[playerid][pTeam] != 1) das bedeutet, dass der spieler die waffe bekommt, wenn er nicht im team 1 ist ^^
    ich schätze mal team 1 ist bei dir cops, tu einfach das ! weg, so soll es ausehen dann: if(SpielerInfo[playerid][pTeam] == 1)

    es gibt nen public der heißt OnPlayerEnterVehicle
    da kommt sowas rein.


    bsp.:

    Code
    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    SendClientMessage(playerid,0xFFFFFFFF,"DU steigst in ein Auto :O wie hast du das denn geschafft.. OO`? cheater?");
    return 1;
    }




    MFG
    CutX

    das ganze lässt sich mit einer

    Code
    else if

    abfrage lösen.


    beispiel:


    Ist ungetestet!, aber so funktionierts, mit else if kannst du das machen.



    MFG
    CutX

    es lassen sich in samp keine neuen tasten definieren, es gibt nur die vordefinierten, die die du auch im singleplayer nutzen kannst (z.B. H für hupe oder Shift daste für rennen/langsamlaufen)
    ich würd dir empfehlen einfach auf ne andere taste umzusteigen z.B. shift oder Leertaste (shift taste = KEY_WALK )




    MFG
    CutX

    Doch noch eine Frage.


    Was mach ich falsch?


    C:\Users\..\.pwn(927) : error 004: function "IsPlayerInArea" is not implemented
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


    oje oje oje ^^ poste mal die fehlerzeile und eventuell auch so 4 - 5 zeilen drumrum (um festzustellen ob du irgendwo ein ; oder ein ) vergessen hast.)



    MFG
    CutX

    mit IsPlayerInArea (gut durchlesen, da steht wie du die koordinaten bekommst.)


    wenn du die Funktion noch nicht hast:


    Code
    forward	IsPlayerInArea(playerid, Float:minx, Float:maxx, Float:miny, Float:maxy);//oben zu den forward's
    
    
    IsPlayerInArea(playerid, Float:minx, Float:maxx, Float:miny, Float:maxy)//ambesten ganz unten ins script.
    {
        new Float:x, Float:y, Float:z;
        GetPlayerPos(playerid, x, y, z);
        if (x > minx && x < maxx && y > miny && y < maxy) return 1;
        return 0;
    }


    jetz kannst du bei OnPlayerUpdate z.B. sowas machen:


    Code
    if(IsPlayerInArea(playerid, minX, maxX, minY, maxY) && PlayerInfo[playerid][pAdmin] <= 0)//wenn du godfather benutzt, kannst dus so lassen, wen nnciht musst du den teil mit PlayerINfo an dein script anpassen.
    {
    SetPlayerHealth(playerid, 0);
    return 1; 
    }



    MFG
    CutX

    zu deiner ersten Frage:


    Das geht mit einem 3D Textlabe. Das brauchst du dazu:


    Create3DTextLabel(text[], color, Float:X, Float:Y, Float:Z, Float: DrawDistance, virtualworld, testLOS)


    Beispiel:
    In OnGamemodeInit

    Code
    Create3DTextLabel("blablabla ich stehe über einem Objekt :D!",COLOR_GREEN, /*X, Y, Z (Deine Koordinaten über dem Object)*/,10, 0);



    zu deiner zweiten frage:


    alles was du dazu brauchst findest du hier:

    OnPlayerKeyStateChange(playerid, newkeys, oldkeys)

    Liste der Definierten Tasten in samp(Tipp: Leertaste ist KEY_JUMP aber ich würde die Shift taste, KEY_WALK, benutzen)


    ein kleines Beispiel:


    Code
    if ((newkeys == KEY_JUMP)&& (GetPlayerState(playerid) ==PLAYER_STATE_ONFOOT))
    {
    if(IsPlayerConnected(playerid))
    {
    SendClientMessage(playerid, COLOR_WHITE, "WoW! du hast die Leertaste gedrückt oO !!");
    }
    }


    ein weiteres beispiel mit räume betreten:


    Code
    if ((newkeys == KEY_JUMP)	&& (GetPlayerState(playerid) ==	PLAYER_STATE_ONFOOT))
    			{
    				if(IsPlayerConnected(playerid))
    				{
    					if(!IsPlayerInRangeOfPoint(playerid, 5,/* X, Y, Z (Deine Koordinaten)*/); { SendClientMessage(playerid, COLOR_RED, "Du bist am falschen Ort!"); return 1; }
     					SetPlayerInterior(playerid, 1);
    					SetPlayerPos(playerid, 3.7637,23.0542,1199.6012);
    					SendClientMessage(playerid, COLOR_WHITE, "Du hast mit drücken der Leertaste die Shamal betreten.");
    				}
    			}




    MFG
    CutX

    zu deiner zweiten frage:
    also,


    in samp gibt es eine reihe von definierten Tasten (siehe wikisamp-Keylist)
    aber das wars auch schon. Es ist nicht (wird acuh nie möglich sein -.-) möglich neue tasten miteinzubeziehen,
    also z.B. Taste F9 oderso.


    zu deiner ersten frage hab ich leider keine antwort :/ tut mir leid.




    MFG
    CutX

    hast du das genau so gemacht? :


    Pawno aus, include geöffnet, bearbeitet, gespeichert.
    Pawno an, script compilen, fertig.


    oder hast du pawno mit script offen gehabt und wärend dessen die incluede verändert und dann gespeichert und dein script compilt?
    das würde nämlich nicht hinhauen ^^



    Zitat

    /afk ist im Script auch nicht vorhanden :D, also wirklich nur im INCLUDE


    bedenke, dass die include im script ist ^^ es würde dir z.B. nix bringen, wenn du die include veränderst und dann dein script nicht neu compilst :D

    if(strcmp(cmd, "/prison", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, Rot , "[Benutze]: /prison [ID] [Zeit]");
    return 1;
    }
    new playa;
    new money;
    playa = ReturnUser(tmp);
    tmp = strtok(cmdtext, idx);
    money = strval(tmp);
    new grund[100];
    new length = strlen(cmdtext);
    while ((idx < length) && (cmdtext[idx] <= ' '))
    {
    idx++;
    }
    new offset = idx;
    while ((idx < length) && ((idx - offset) < (sizeof(grund) - 1)))
    {
    grund[idx - offset] = cmdtext[idx];
    idx++;
    }
    grund[idx - offset] = EOS;
    if (PlayerInfo[playerid][pAdmin] >= 1338)
    {
    if(IsPlayerConnected(playa))
    {
    if(playa != INVALID_PLAYER_ID)
    {
    GetPlayerName(playa, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "[AdmCmd]: Du hast %s für %d Minuten ins Prison eingesperrt. Grund: %s", giveplayer, money, (grund));
    SendClientMessage(playerid, Leuchtrot, string);
    format(string, sizeof(string), "Du wurdest von Admin %s für %d Minuten wegen %s ins Prison gesteckt", sendername, money, (grund));
    SendClientMessage(playa, Leuchtrot, string);
    ResetPlayerWeapons(playa);
    WantedPoints[playa] = 0;
    PlayerInfo[playa][pJailed] = 1;
    PlayerInfo[playa][pJailTime] = money*60;
    SetPlayerInterior(playa, 0);
    SetPlayerPos(playa,864.91, -2077.61, 927.41);
    SendClientMessage(playa, COLOR_LIGHTBLUE, "Um deine Absitzzeit anzusehen benutze{FFFFFF} /prisontime.");
    }
    }
    }
    else
    {
    SendClientMessage(playerid, Rot , "Du bist kein befugter Admin!");
    }
    }
    return 1;
    }


    Ungetestet! sollte aber rein Theoretisch alles klappen.



    MFG
    CutX

    also es gibt da eine Funktion die nennt sich IsPlayerInArea wie die funktion schon sagt.. area, gebiet Is.. das kannst du benutzen wenn du willst, dass z.B. etwas passiert, wenn ein spieler in einer
    bestimmten Zone ist.
    die funktion musst du in dein Script einfügen, das:
    forward IsPlayerInArea(playerid, Float:minx, Float:maxx, Float:miny, Float:maxy);
    oben zu den forwards im script.
    Und das:
    IsPlayerInArea(playerid, Float:minx, Float:maxx, Float:miny, Float:maxy)
    {
    new Float:x, Float:y, Float:z;
    GetPlayerPos(playerid, x, y, z);
    if (x > minx && x < maxx && y > miny && y < maxy) return 1;
    return 0;
    }

    ganz unten ambesten einfügen.


    falls du damit nciht klaar kommst, schau dir das Tutorial im englischen samp forum an: Klick mich an :P


    das sollte auchnoch interessant für dich sein, hab nciht lang suchen müssen im wiki, schau da öffters nach, daklären sich meißtens dann shcon alle fragen.



    MFG
    CutX

    lade den song als mp3 runter und klatsch es bei funpic auf ein webinterface und pack den link dann rein :)

    hatte ich anfangs auch gemacht... aber das ist illegal... vielle sagen gema gibt sich nicht ab mit sonem kleinkram.. aber was ewnn doch.. das sit halt das blöde,
    und ja von dem fs hab ich schon gehört, getestet klappt auch super, nehme es aber nicht, weil s nciht was ist was ichs elbst gemacht hab ^^ cih nehm nur zeug wo cih auch verstehe und selber gemacht habe
    das sit immer ambesten, so weis man acuh wenn bugs auftreten woran das liegen kann, weil mans ja selbst gescriptet hat.
    ist egal, danke trozdem für eure hilfreichen antworten, ich habe mich dazu entschlossen nur webradien reinzutun, hab jetz 22 stück die müssten reichen.



    MFG
    CutX

    nope mit dem link klappts auch nciht, immernoch das gleiche problem
    bloß jetz wo ich s heutmorgen selber nochmal testen wollte, da ging es bei mir aufeinmal auch nicht :(
    gestern gings nur bei mir und bei allen anderen nciht, und jetz heute gehts bei keinem..... misteryös O.x


    //edit: mir sit aufgefallen, dass der link zu dem video sich geändert hat vongestern auf heut oO
    //edit nr2: ich gebs auf, kann gelöscht werden, mir reichen die webradios und die songs könnt ich zwar alle auf nen ftp... aber da hat duie gema was dagegen und cih will kein stress... auch wenn vielle denken die gema schlägt sich nicht mit kleinkram rum... meißtens ist es doch so :(

    hey,


    also, ich hab für den server wo ich drauf zocke so nen kleinen Dialog gemacht, wo man webradios und auch songs abspielen lassen kann,
    anfangs habe ich die songs auf nem ftp gehabt, habe aber mitbekommen, dass die gema was dagegen hat.. also habe ich nach einem legalen weg gesucht die songs irgendwie dochnoch abspoielen zu lassen.
    dieß ist mir auch gelungen.
    der Sound des videos wird abgespielt und alles klappt die webradios auch.. eigentlich ganz super,
    jetzt will ein anderer auchmal so ein song von youtube abspielen lassen, aber es geht nicht. der stream wird angezeigt aber kein ton.
    er hat in optionen das radio natürlich an und boxen auch aufgedreht is ja klar...
    die webradios funktionieren bei allen super, nur die YouTube videos klappen eigentlich nur bie mir :(
    woran könnte das liegen ?



    Ausschnitt aus Dialog(script stimmt keine fehler):


    case 1://Last Christmas, 2011 version
    {
    StopAudioStreamForPlayer(playerid);
    PlayAudioStreamForPlayer(playerid, "http://www.youtube-mp3.org/get?video_id=6ea_ZkNYz2s&h=759632c072bf9fb49eaf924eebef2c4c");
    SendClientMessage(playerid, COLOR_WHITE, "/stopsong um den/das Song/Radio zu stoppen.");
    }


    ich weis echt nichtmer weiter :( gegoogelt und sufu benutzt hab ich auch schon....
    hoffe mir kann jemand helfen :D




    MFG
    CutX

    also es gibt ein tutorial dazu zu soeinem "hardware-ban" von trooper, da war ich drinne, aber der hat seinen Beitrag gelöscht,
    keine ahnung warum