Beiträge von Snail

    So blöd bin ich auch nicht.
    Es geht darum, ob er die Variablen erstellt hat bevor er sie verwendet.

    //Richtig :
    new blubb;
    blubb = CreatePickup(...);
    // Falsch :
    blubb = CreatePickup(...);
    new blubb;

    So sollte es gehen. Habs allerdings im Editor geschrieben --> ungetestet



    //oben:
    new oldweather[MAX_PLAYERS];
    //------------------------------
    public SetWetter()
    {
    new Float:xx, Float:yy, Float:zz;
    for(new i=0; i< GetMaxPlayers(); i++)
    {
    if(IsPlayerConnected(i))
    {
    GetPlayerPos(i, xx, yy, zz);
    if((xx > -992.5172 && xx < 4000.0000) && (yy < 528.0000 && yy > -4000.0000)) //Los Santos
    {
    SetPlayerWeather(i, Weather[0]);
    //Los Santos
    if(oldweather[i]!=Weather[0])
    {
    oldweather[i]=Weather[0];
    if(Weather[0]==1) { SendClientMessage(i,FARBE, "WETTER für Los Santos : Sonnenschein"); }
    else if(Weather[0]==2) { // SendClientMessage mit dem Wettername der Wetterid 2 }
    // usw.
    }
    }
    if((xx > -4000.0000 && xx< -992.5172) && (yy < 4000.0000 && yy > -4000.0000)) //San Fierro
    {
    SetPlayerWeather(i, Weather[1]);
    //San Fierro
    if(oldweather[i]!=Weather[1])
    {
    oldweather[i]=Weather[1];
    if(Weather[1]==1) { SendClientMessage(i,FARBE, "WETTER für SF : Sonnenschein"); }
    else if(Weather[1]==2) { // SendClientMessage mit dem Wettername der Wetterid 2 }
    // usw.
    }


    }
    if((xx > -992.5172 && xx< 4000.0000) && (yy < 4000.0000 && yy > 528.0000)) //Las Venturas
    {
    SetPlayerWeather(i, Weather[2]);
    //Las Venturas
    if(oldweather[i]!=Weather[2])
    {
    oldweather[i]=Weather[2];
    if(Weather[2]==1) { SendClientMessage(i,FARBE, "WETTER für LV : Sonnenschein"); }
    else if(Weather[2]==2) { // SendClientMessage mit dem Wettername der Wetterid 2 }
    // usw.
    }
    }
    }
    }
    return 1;
    }


    zu dem wettersystem das du verwendest :


    public SetWetter()
    {
    new Float:xx, Float:yy, Float:zz;
    for(new i=0; i< GetMaxPlayers(); i++)
    {
    if(IsPlayerConnected(i))
    {
    GetPlayerPos(i, xx, yy, zz);
    if((xx > -992.5172 && xx < 4000.0000) && (yy < 528.0000 && yy > -4000.0000)) //Los Santos
    {
    SetPlayerWeather(i, Weather[0]);
    //Los Santos
    if(Weather[0]==1)
    {
    SendClientMessage(i,FARBE, "WETTER für Los Santos : Sonnenschein");
    }
    else if(Weather[0]==2)
    {
    // SendClientMessage mit dem Wettername der Wetterid 2
    }
    // usw.
    }
    if((xx > -4000.0000 && xx< -992.5172) && (yy < 4000.0000 && yy > -4000.0000)) //San Fierro
    {
    SetPlayerWeather(i, Weather[1]);
    //San Fierro
    // genauso wie oben nur mit if(Weather[1]==1)
    }
    if((xx > -992.5172 && xx< 4000.0000) && (yy < 4000.0000 && yy > 528.0000)) //Las Venturas
    {
    SetPlayerWeather(i, Weather[2]);
    //Las Venturas
    // genauso wie oben nur mit if(Weather[2]==1)


    }
    }
    }
    return 1;
    }

    Du solltest ein bissl auf die Farbwahl achten.
    Bei der ersten Signatur finde ich den blauen Text eher unpassend, da er sich nicht wirklich vom lila abhebt und somit nicht so gut lesbar ist.
    Ansonsten ganz ok.

    die 6 fehler waren auf deinen ursprünglichen post bezogen, den ich in meinem post ja als zitat angeheftet habe.
    Du hast zwar einige davon jetzt verbessert, allerdings ist GetPlayerName immernoch falsch:
    GetPlayerName(i,name, sizeof(name));


    //edit:
    neuer Code :



    ...
    {
    if(var==1) return 1;
    else if(var==2) return 2;
    else return 0;
    SendClientMessageToAll(GREY, "DEBUG: Abfrage durchgeführt.");
    }

    var und GREY ist definiert.

    Es gibt nen geilen Heli, ne Sniper die explodierende Projektile schießt, einen Revolver, Granatwerfer und ein paar neue Fahrzeuge.
    Ansich ists wie das normale GTA:IV nur eben ein paar neue Fahrzeuge, ein paar neue Waffen und ne neue Story.

    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    new name[24];
    // GetPlayerName fehlt
    format(name,sizeof(name),"Dein name ist %s",name);
    SendClientMessage(i,FARBE,name);
    return 1; // beendet die Schleife nach ID 0
    }


    Ich finde 5 oO
    // e: 6 Fehler gefunden
    1: i++
    2: name[24];
    3: GetPlayerName fehlt
    4: SendClientMessage(i,FARBE,name);
    5: return beendet die Schleife nach ID 0
    6: String ist viel zu klein für die Nachricht - Muss die Länge 34 haben

    Roleplayscript, wenn dann dein Projekt schlecht läuft kannst dus immer noch verkaufen,
    da die Nachfrage an Roleplayscripts höher ist, als an (T-)DM-Scripts

    Du kannst dir den string pname sparen.
    Sieht dann folgendermaßen aus :



    CMD:pm(playerid,params[])
    {
    new pID, msg[80];
    if(sscanf(params, "us",pID,msg))return SendClientMessage(playerid,COLOR_RED,"Benutze: /pm [ID Nachricht!");
    if(!IsPlayerConnected(pID))return SendClientMessage(playerid,COLOR_RED,"Kein Spieler mit angegebener ID Online");
    if (pID == playerid)return SendClientMessage(playerid,COLOR_RED,"Du kannst dir nicht selbst eine PM schicken!");
    else
    {
    new str[128];
    GetPlayerName(pID,str,sizeof(str));
    format(str,sizeof(str),"PM von %s:%s",str, msg);
    SendClientMessage(pID,PM,str);
    GetPlayerName(playerid,str,sizeof(str));
    format(str,sizeof(str),"PM an %s gesendet:%s",str msg);
    SendClientMessage(playerid, PM, str);
    }
    return 1;
    }

    Ein paar mehr Features hätten sie aber noch einbringen können. Naja, was solls... :D

    Was ? Hier sind sehr viele neue Features dabei.
    • Neue Objekte/Partikel
    • Drive-by mit anderen Waffen
    • mehr Kontrolle über Fahrzeuge
    • Farben in SendClientMessage Dialog und 3DTextLabel
    • MapIcons
    • bis zu 5 Objekte an einen Spieler heften
    • AttachObjectToVehicle
    • Nummernschilder


    Also ich weiß nicht, was du noch mehr willst.