Ok, kann geschlossen werden.
Das Script wird wohl oder übel auf meinem Computer rumgammeln. Vielleicht scripte ich ja weiter, wenn ich wieder die Zeit dafür finde.
Viele Grüße
Ok, kann geschlossen werden.
Das Script wird wohl oder übel auf meinem Computer rumgammeln. Vielleicht scripte ich ja weiter, wenn ich wieder die Zeit dafür finde.
Viele Grüße
Irgendwie sind am LSPD Irgendwelche Straßen gemappt die Rumfliegen.
Man Sieht alle Spieler auf der Karte es gibt kein /help
Und das Tacho ist aus dem Standart Loh Script......
Die Straße am LSPD hab ich ausversehen hoch getan. Kann ich schnell beheben.
In OnGameModeInit ShowPlayerMarkers ganz einfach behebar. /Faq sollte eigentlich gehen :O
Tacho hab ich einfach mit GameTexts gemacht, keine Ahnung ob es das vom LoH Script ist. Hab das originale LoH Tacho nie gesehen
Startgebot: Biete einfach. Finde eigentlich alles ok.
iPawn: Bleib mal bitte sachlich und geb konstruktive Kritik ab. Und es gibt Commands, da musste wohl was verpasst haben. :d
Testserver: 85.114.130.96:8527
Tutorial wurde extra rausgenommen,also nicht wundern
edit: Und danke an Weihnachtsferien für den Server
edit²: Hab vergessen den AccountsOrdner in Scriptfiles reinzukopieren,also wenn Acc nicht gespeichert wird wars meine Schuld.Kein Bug1
Eventuell Testserver???
Leider kein Testserver.
Falls aber jemand so nett wär, und mir einen leihen könnte, könnte ich das Script hochladen^^
Was ist an den coordinaten denn Falsch? die Zonen werden angezeigt nur der Textdraw an der einen Nicht
Timer erstellen und unter OnGameModeInit alle 2 Sekunden ausführen lassen. Im Timer dann überprüfen, ob der Spieler sich in der NO-DM Zone befindet (IsPlayerInArea), und dann zeigst Du ihm den Textdraw:
TextDrawShowForPlayer(i,text:text);
Und du wolltest ja, dass er dann keine Waffe rausholen soll:
SetPlayerArmedWeapon(i,0);
Gruß
Entweder im Callback "OnPlayerStateChange" so etwas abfragen, wenn du wissen willst, ob der Spieler ALLGEMEIN schießt:
if (newkeys & KEY_FIRE)
{
}
Und wenn du wissen willst, ob der Spieler auf einen anderen Spieler geschossen hat, musst Du das neue Callback von 0.3d (OnPlayerGiveDamage) nutzen.
public OnPlayerGiveDamage(playerid, damagedid, Float: amount, weaponid)
{
return 1;
}
Viele Grüße,
Bunny
Oben eine Variable erstellen:
new DMPeople;
Und jedes mal wenn der Command "/dm" ausgeführt wird, der Variable ein "Punkt" dazugeben.
if(strcmp(cmdtext,"/dm",true)==0)
{
SendClientMessage(playerid,FARBE,"Du bist nun in der Deathmatch-Arena!");
SetPlayerPos(playerid,X,Y,Z);
DMPeople +=1;
return 1;
}
So als Beispiel Und nun möchtest Du per /dmpeople auslesen, wie viele Leute, sich in der Deathmatch Arena befinden. Das machst du so:
if(strcmp(cmdtext,"/dmpeople",true)==0)
{
new string[128];
format(string,sizeof(string)," Es befinden sich gerade %d Leute in der Deathmatch Arena. Mit /dm kannst du diese auch betreten!",DMPeople);
SendClientMessage(playerid,FARBE,string);
return 1;
}
Und unter dem Callback "OnPlayerDisconnect", der Variable ein "Punkt" abziehen (davor erstmal abfragen, ob der Spieler sich in der DMArena befindet), weil der Spieler sich ja sozusagen ausloggt also die Arena verlässt:
if(PlayerInfo[playerid][pDM] = 1) // Beispiel
{
DMPeople -=1;
}
Und natürlich unter dem Befehl, wo man die Arena verlässt, das gleiche Spiel wie bei OnPlayerDisconnect.
Viele Grüße,
Bunnyhopper
Versuchs so:
Bei OnPlayerConnect:
SetTimer("CheckFlughafen",5000,true); // ein Timer überprüft alle 5 Sekundne ob der Spieler sich im Flughafen aufhält
Ein public irgendwo im Script erstellen:
forward CheckFlughafen();
public CheckFlughafen()
{
for (new i = 0; i < MAX_PLAYERS; i++) // oder GetMaxPlayers wenn du paar Ressourcen sparen möchtest, damit bekommen wir jeden Spieler
{
if(IsPlayerInArea(i,-84.8909,2710.7996,507.2017,2350.0823))
{
GameTextForPlayer(i,"Flughafen",4000,1);
}
}
return 1;
}
Halt einen Timer starten, welcher alle 5 Sekunden überprüft, ob der Spieler sich am Flughafen befindet
Schick die Zeile
Erstmal der Stock:
stock IsPlayerInArea(playerid,Float:minX,Float:minY,Float:maxX,Float:maxY)
{
new Float:pX,Float:pY,Float:pZ;
GetPlayerPos(playerid,pX,pY,pZ);
if(pX >= minX && pX <= maxX && pY >= minY && pY <= maxY) return 1;
else return 0;
}
Und den stock benutzt Du z.B so:
if(strcmp(cmdtext,"/hallo",true)==0)
{
if(IsPlayerInArea(playerid,minX,minY,maxX,maxY))
{
// blabla
}
else
{
// blabla
}
}
Wie bitte?
Kannst Du das bitte nochmal formulieren. Geht dein IsPlayerInArea stock nicht, oder was ist dein Problem? Hab es leider nicht ganz verstanden.
#define Türke 0x00FFF0FF
Haha, das ist regelrecht der HAMMER :D!
Back to Topic:
Du hast in deinem Script leider keine Variablen für LvL usw, nur für das Passwort. Erstell wie Benutzername schon sagte, ein enum mit Level, Adminlevel und Score.. Wenn Du Hilfe brauchst, sag Bescheid und ich helfe dir gerne.
Ich nicht.
Ein Thema, was den Wissenschaftlern, falls man die Dummköpfe überhaupt Wissenschaftler nennen darf, Aufmerksamkeit gibt.
http://wiki.sa-mp.com/wiki/TextDrawCreate
Hier kannst Du die Koordinaten herausfinden und den jeweiligen Code bekommen: http://bsndesign.webs.com/tde.htm
Und dann einen Timer starten z.B 3 Sekunden, und nach 3 Sekunden wird der TextDraw wieder ausgeblendet. Oder Du benutzt einfach ein GameText anstatt ein TextDraw, viel einfacher....
Sagen wir du arbeitest mit enums.
z.B pPoints
PlayerInfo[playerid][pPoints] -= 10;
hab jetzt kp, ob du mit PVars oder Enums arbeitest.
Haha,wie geil!
Nett,dass Du das FS veröffentlichst. Saubere und stets ordentliche Arbeit.
kiddy 0815 noch einer mehr juhuuuuuu
Und wenn Du gehst,haben wir einen "kiddy 0815" weniger juhuuu
B2T:
Guck bei Showroom unter "ALLE GAMEMODES",dort ist das Script aufgelistet ;)!
Eigentlich nicht schlecht,aber zu schlicht,und die Fonts passen nicht soo gut zu den Bildern bzw. Backgrounds
Gruß, Bunnyhopper
Dein Streamer ist kaputt oder ist nicht aktuell!
Benutze CreateObject & MoveObject anstatt CreateDynamicObject & MovieDynamicObject, dann müsste es klappen. Oder du besorgst dir einen neueren aktuelleren Streamer, der auch für ordnungsgemäß bei 0.3d funktioniert.
Gruß, Bunnyhopper
Das Script 0.8, sowie die anderen Versionen, sind der größte Dreck.
Keinem weiter zu empfehlen