Beiträge von Yoda

    meinst du ein auto porten wo jemand drinne ist?


    dann mach doch einfach:



    if(IsPlayerInAnyVehicle(playerid))
    {
    SetVehiclePos(GetPlayerVehicleID(playerid),Float:x,Float:y,Float:z);
    }
    else
    {
    SetPlayerPos(playerid,Float:x,Float:y,Float:z);
    }

    da das mit vb gemacht ist nützt euch der sourcecode ziemlich wenig^^ aba mit etwas überlegen nützt er dann auch schon wieder viel^^


    ich zeig euch mal nen ausschnitt:


    Dim F1active As Boolean = False
    Dim F1 As Boolean = False


    Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox1.CheckedChanged
    If (F1active = False) Then
    F1active = True
    ElseIf (F1active = True) Then
    F1active = False
    End If


    End Sub



    das hier ist dann noch in nem timer:
    F1 = GetAsyncKeyState(Keys.F1)


    If (F1 = True) Then


    If (F1active = True) Then


    System.Windows.Forms.SendKeys.Send(TextBox1.Text)
    System.Windows.Forms.SendKeys.Send("{ENTER}")
    End If
    End If



    naja werdet jtz eh nicht drauß schlau^^

    ok habs etwas verändert...


    IsKeyJustDown(key, newkeys, oldkeys)
    {
    if((newkeys & key) && !(oldkeys & key)) return 1;
    return 0;
    }


    public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
    {
    if(IsKeyJustDown(KEY_FIRE,newkeys,oldkeys))
    {
    if(IsPlayerInAnyVehicle(playerid))
    {
    SetVehicleHealth(
    msg
    }
    }
    return 1;
    }



    also bei mir kommen jtz keine errors mehr

    doch das geht schon


    über main:


    IsKeyJustDown(key, newkeys, oldkeys)
    {
    if((newkeys & key) && !(oldkeys & key)) return 1;
    return 0;
    }



    irgendwo nach main dann:
    public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
    {
    if(IsKeyJustDown(KEY_FIRE,newkeys,oldkeys))
    {
    if(GetPlayerState newstate == PLAYER_STATE_DRIVER)
    {
    SetVehicleHealth....
    Msg....
    }
    }
    return 1;
    }



    so sollte gehen, habs ne getestet

    so es geht bei mir^^

    if(strcmp(cmd,"/admins",true) == 0)
    {
    new AdminsConnecteds = 0;
    for(new i=0; i<MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(PlayerInfo[i][Level] > 1)
    {
    new name[MAX_PLAYER_NAME];


    GetPlayerName(i,name,sizeof(name));


    SendClientMessage(playerid,GRÜN,"Admins Online:");
    format(string,sizeof(string),"%s (%d)\n\r",name,PlayerInfo[i][Level]);
    SendClientMessage(playerid,ROT,string);
    AdminsConnecteds++;
    }
    }
    }
    if(AdminsConnecteds == 0)
    {
    ClientText(playerid,ROT,"Es sind keine Admins Online.","There are no Admins.");
    }
    return 1;
    }

    hmm ich hab mir den 10minuten angetan dann isser nach ignore geflogen^^
    da kann er bei seines gleichen warten bis ich ausversehen die datei mit ignore usern löche


    aber login&register kann er mal showroom gucken, das ja ne soschwer das einzubauen

    Zitat

    Alles klar ^^ Aber wenn die GamemodeInit Drin Bleibt steht bei den Clienten "Blank-Gamemode", weil da noch der SetGamemodeText drin ist.




    Aber sonst ist das FS wirklich super. GROßES LOB :D

    Wenn man keine ahnung hat, einfach mal stille sein^^




    Es ist egal ob da OngameModeInit steht, denn FS´s laden eher als der GM alsoWenn im GameModeInit steht SetGameModeText ist das kein Problem.


    Was man nur beachten sollte, das main() raus zunehmen

    Als erstes Deklarierst du eine Funktion:


    forward funktionsname();


    Dann kannst du an gewünschter stelle im Script den Timer starten.

    SetTimer("funktionsname",1000(zeit: 1sekunde),1(wiederholht sich, bei 0 nur einmal));


    Nun musst du nur noch die Funktion Definieren:

    public funktionsname()
    {
    ...
    return 1;
    }



    das ganze sähe dann so aus für deinen Sprit:


    new Benzin[MAX_PLAYERS] = 100;
    forward Sprit(playerid);


    SetTimer("Sprit",1000*10,1);



    public Sprit()
    {
    if(GetPlayerState==PLayer_State_Driver)//oda so
    {
    Benzin[playerid]--;
    }
    return 1;
    }