Also so eine Abkürzung soltle sogar schon so funktionieren:
#define SetHealth SetPlayerHealth
Obs das nu bringt, weis ich auch nicht
Beiträge von M4rciii
-
-
Ganz nette Sache, nur ich hab es an mir alles zu bemängeln
Das wäre, dass man unendlich weit runterscrollen kann und dass Umlaute nicht richtig angezeigt werden.
Doch sonst ist alles Top!!
Gute Arbeit -
new Skin = GetPlayerSkin(playerid);
if(Skin == 285 || Skin == 165 || Skin == 277 || Skin == 281 || Skin == 282 || Skin == 288 || Skin == 286 || Skin == 287)Du musst den Operator verwenden, er stellt ein "ODER" dar.
-
// Irgendwo ins Script:
stock SendFrakMessage(fraktionsid,color,msg[])
{
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(PlayerInfo[i][pLeader] == fraktionsid || PlayerInfo[i][pMember] == fraktionsid)
{
SendClientMessage(i,color,msg);
}
}
}
return 1;
}
Dann anstatt
SendJobMessage(7, COLOR_RED, str);
das benutzen:
SendFrakMessage(25, COLOR_RED, str); -
Um die zu helfen bräuchte man dein ganzes GodMode-Zeug + /dm + /exit
-
EDIT:
Sorry für den Fehler!
Nach langer Wartezeit habe ich ihn behoben und ihr müsst alle die Include nochmals downloaden.
Dankeschön! -
Zitat
Hier mal /gotocoords hab ich mal irgendwo gefunden
Irgendwo???
Das ist passgenau aus unserem Script kopiert. Den Command hatte ich selber geschrieben und nun kommen solche wie du, und stellen sich als tollen Scripter dar.
Das ist einfach nur mies! -
-
Ich würde das ganze mal mit SetObjectRot(objectid,0.0,0.0,A); probieren.
Also A als der Angle der Person. Das muss dann aber am besten in einen Timer, sodass es sich immer wieder anpasst. -
Zitat
format(output,sizeof(output),"objekt%d",params);
SetObjectPos(output,X,Y,Z);Du kannst keinen String als Objekt verschieben^^
// Ein neues define:
#define ReturnObjectVar(%1) objekt%1// Dann kannst du das so benutzen:
SetObjectPos(ReturnObjectVar(params),X,Y,Z);// Wenn params ein String, ist dann:
SetObjectPos(ReturnObjectVar(strval(params)),X,Y,Z); -
WTF??
Er wurde tatsächlich gebannt? Also das kann ich mir im Leben nicht vorstellen. Er ist ein guter Scripter und vereinfacht und verbessert SAMP wie er nur kann. Man sollte meinen, dass dies auch im Interesse der SAMP-Leitung wäre. -
Du musst dein Script (die .pwn) mit dem Programm Pawno öffnen, es befindet sich im pawno Ordner des Servers. Dann musst du oben auf den blauen Pfeil drücken und es wird dir das Ergebnis gezeigt. Wenn Errors angezeigt werden, musst du sie beheben. Dann ist die .amx an die .pwn angepasst.
Das muss man machen, da der Server nur auf die .amx zugreift. -
// In einen Timer:
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
new weapon, ammo;
GetPlayerWeaponData(i,6,weapon,ammo);
if(weapon == 34)
{
if(PlayerInfo[i][pMember] == 3 || PlayerInfo[i][pLeader] == 3) continue;
if(PlayerInfo[i][pRank] >= 3 && (PlayerInfo[i][pMember] == 8 || PlayerInfo[i][pLeader] == 8)) continue;
GivePlayerWeapon(i,weapon,-ammo);
}
}
} -
// Ein Array mit den Fraktionsnamen erstellen:
new FraktionsNamen[11][24] = { // Fraktionsanzahl = 11 Maximale Länge = 24 Zeichen
"Polizei",
"FBI",
"Army",
"Medic",
"LCN",
"Yakuza",
"Präsident",
"Hitman",
"News Reporter",
"Taxi",
"Fahrschule"
};// Dann im Befehl:
format(string, sizeof(string), " Du hast %s die Kontrolle über die Fraktion %s gegeben.", giveplayer,FraktionsNamen[(level-1)]); -
if(strcmp(cmd,"/pay",true) == 0)
{
tmp = strtok(cmdtext,idx);
if(!strlen(tmp)) return SendClientMessage(playerid,COLOR_WHITE,"/pay [EmpfängerID] [Betrag]"); // Nachricht, wenn das Parameter fehlt
param1 = ReturnUser(tmp); // Das erste Parameter, also der Spieler
tmp = strtok(cmdtext,idx);
if(!strlen(tmp)) return SendClientMessage(playerid,COLOR_WHITE,"/pay [EmpfängerID] [Betrag]"); // Nachricht, wenn das Parameter fehlt
param2 = strval(tmp); // Das zweite Parameter, also der Betrag
// Hier kann das Nachrichtengelaber hin
GivePlayerMoney(playerid,-param2); // Dem Commandeingeber das Geld wegnehmen
GivePlayerMoney(param1,param2); // Dem ausgewählten Spieler das Geld geben
return 1;
} -
Nunja... Alle 3 Scripts sind eig die gleichen, nur Fahrzeug und Texte geändert. Außerdem ist der Code ziemlich unübersichtlich (RICHTIG EINRÜCKEN) und du solltest bei den Commands und dem Text beim Einsteigen lieber nach der ModelID abfragen
Daher zusammengefasst: 3,5/10
-
{
if (strcmp("/porten", cmdtext, true, 10) == 0)
{
ShowMenuForPlayer(Porten, playerid);
TogglePlayerControllable(playerid, false);
return 1;
}
return 0;
}
Ändern in:
if (strcmp("/porten", cmdtext, true, 10) == 0)
{
ShowMenuForPlayer(Porten, playerid);
TogglePlayerControllable(playerid, false);
return 1;
} -
Das sollte dir helfen
Einfach die Variablen in ein Array packen und dann so wie beschrieben ausgeben lassen. -
Du solltest noch die Antwort "Ich respektiere, dass breadfish seine Freizeit genießen will" hinzufügen....
*arschkriech* -