Kleiner Tipp am Rande: Da haben sich ein paar Rechtschreibfehler eingeschlichen... und der Satz "Viele Kunden, die ihre Produkte bei und finden" macht auch nicht wirklich SInn. Design ist richtig gut. Gefällt mir da es schlicht ist und seriös wirkt
Beiträge von Holdont
-
-
dcmd ist da tatsächlich die bequemste Lösung sonst:
new MeinText[128]=strtok(cmdtext, idx);Da ich nur mit dcmd + sscanf arbeite bin ich mir nicht ganz über die Syntax sicher
-
http://wiki.sa-mp.com/wiki/TextDrawSetString Das Wiki hilft oft
-
Magst du nochmal deinen Code posten? Überblick ist bei mir nicht mehr vorhanden
//edit lesen hilft sry
-
ohje
dann einfach die o's in g's umändern
dcmd_o(playerid,params[])
{
if(Spieler[playerid][Admin]<1) return SendClientMessage(playerid,ROT,"Du bist kein Admin!");
if(sscanf(params, "s[90]",String)) {
return SendClientMessage(playerid,ROT,"Benutzung: /o [Nachricht]");
}
else{
format(String,sizeof String, "Admin %s: %s.",PlayerName(playerid),String);
SendClientMessageToall(0xFFA500AA,String);
}
return 1;
}Anhang:
Du brauchst sscanf + stock PlayerName(playerid):
stock PlayerName(playerid) {
new Name[MAX_PLAYER_NAME];
GetPlayerName(playerid,Name,sizeof(Name));
return Name;
}//edit 1: Anhang hinzugefügt
-
oben bei den defines hinzufügen:
#define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1 -
Warum,Wieso weshalb?? In welchem Kontext?
Vergessen habe ich dcmd(o,1,cmdtext); <- unter OnPlayerCommand
-
Hier mit dcmd:
-Admin Abfrage ist mit Spieler[playerid][Admin]
Globale Vars
#define COLOR_OOC 0xE0FFFFAA
new Ooc,togooc[MAX_PLAYERS],String[128];Der eigentliche /o command
dcmd_o(playerid,params[])
{
if(Ooc == 0) return SendClientMessage(playerid,ROT,"Der Ooc ist abgeschaltet");
if(sscanf(params, "s[90]",String)) {
return SendClientMessage(playerid,ROT,"Benutzung: /o [Nachricht]");
}
else{
format(String,sizeof String, "(( %s: %s ))",PlayerName(playerid),String);
ooc(String);
}
return 1;
}stock ooc:
stock ooc(string[])
{
for(new i=0;i<MAX_PLAYERS;i++){
if(togooc[i]==0)
{
SendClientMessage(i,COLOR_OOC,string);
}
}
//Log("Ooc_Chat",string);
return 1;
}Der /togooc + /noooc Befehl
if(strcmp(cmdtext,"/togooc",true)== 0)
{
if(togooc[playerid]== 0){
togooc[playerid]=1;
SendClientMessage(playerid,WEIß,"Du hast den Ooc Chat für dich deaktiviert");
return 1;
}
else if(togooc[playerid]==1){
togooc[playerid]=0;
SendClientMessage(playerid,WEIß,"Du hast den Ooc Chat für dich aktiviert");
return 1;
}
}if(strcmp(cmdtext,"/noooc",true)== 0 && Spieler[playerid][Admin]>0)
{
if(Ooc==1)
{
Ooc=0;
SendClientMessageToAll(FARBE_3D,"Der Ooc Chat wurde von einem Admin eingeschaltet");
}
else{
Ooc=1;
SendClientMessageToAll(FARBE_3D,"Der Ooc Chat wurde von einem Admin ausgeschaltet");
}
return 1;
} -
Bei Rauschen hinzufügen siehst du im Screen ganz unten ein Kästchen
-
Du musst das im Router freischalten!
Filterscript Installation:
Filterscripte(.amx) Dateien in den Filterscript Ordner ziehen.
Dann in der server.cfg unter filterscript die Namen einfügen(ohne.amx)Was für einen Router hast du denn.?
Google sonst einfach mal "'Routername' ports öffnen" und durchsuche die Ergebnisse
-
n Carspawner findest du in meiner Signatur...
Ein admin Sys wie du es suchst, gibt es in dem Sinne auch: gAdmin
Das mit den Waffenpacks müsstest du selber Scripten... Wie du einen Home Server im Internet erreichbar machst:
In deinem Route müssen die Ports 7777 tcp und udp geöffnet werden:Bezeichnung | Protokoll | Port |an Pc | an Port
SAMP-Server | TCP |7777 Holdont | 7777
Samp-ServerUDP | |UDP | 7777 Holdont | 7777 -
Momentan ist gibt es keine Farbauswahl. Da gibt es nur den "veralteten" Befehel /farbe <C1> <C2>.
MIt den Bildern hast du leider Recht, dennoch ist das ganze ja auch in Klassen unterteilt, was die Suche eigentlich
erleichtern sollte.Eine Farbpalette für Samp ist meines Wissens unmöglich.
-
Holdont's Car Spawner
Inhalt
Einleitung
Screenshots
Features
Download & Copyright
Source CodeEinleitung:
Hallo liebe Sa-mp Spieler/Scripter,
Ich möchte euch hiermit mein Filterscript für das spawnen von Fahrzeugen über Menüs vorstellen.
Die Idee stammt nicht von mir, sondern von anderen Servern, die über ein solches Menü verfügen.
Da es allerdings meines Wissens kein Filterscript gibt, das dieses Feature für Server anbietet, habe ich mein eigenes geschrieben.Dieses Script hat mir beim erstellen eines Servers geholfen, da ich nun nicht mehr die Model Ids der Fahrzeufe suchen musste.
Screenshots
Features
Um das Script für möglichst viele Server attraktiv zu machen, habe ich beschloßen, gewisse Features in das Script einzubauen.
Diese sind:ZitatPremium Autos
Kosten
Farb Command
OneCar/Player
Fahrzeuge zerstörenEs können bis zu 30 Premium Models bestimmt werden. EIn /farbe Command für kleine Server und ein OneCar/Player 'System'
Weitere Informationen können der readme.txt entnommen werden.Download & Copyright & Source Code
Dieses Script unterliegt dem deutschen Urheberrecht. Die Vervielfältigung, Bearbeitung, Verbreitung und jede Art der Verwertung außerhalb der Grenzen des Urheberrechtes bedürfen der schriftlichen Zustimmung des Autors Holdont.Ich wünsche viel Spaß mit diesem Filterscript und hoffe, dass es euch nützlich erscheint.
Bugs & Vorschläge bitte an email@holdont.de oder in diesem Thread melden.//edit Version 1.1
ToDo List:
ZitatFarben über Menü
Admin Only Nutzung
*mehr Fahrzeuge? -
KLeiner Denkfehler:
Wenn du innerhalb der schleife ein return 0 bzw 1 schreibst, gibt die gesamte Funktion
OnPlayerText 1 oder 0 zurück.So ists richtig:
for(new i=0; i<MAX_PLAYERS; i++)
{
if(GetPlayerVirtualWorld(i) == WORLD)
{
SendPlayerMessageToPlayer(i,playerid,text);
}}
return 0; -
Einfach:
Die Welt des "schreibenden" auslesen, mit einer for schleife alle Spieler durchgehen, und jeder der die gleiche hat, dem wird mit SendClientMessage die Nachticht gesendet.Ob dies die optimale Lösung ist weiß ich nicht, ist aber das einfachste was mir einfiel.
mfg
-
Textdraw0 = TextDrawCreate(643.000000, 2.000000, "_");//Blind
TextDrawBackgroundColor(Textdraw0, 255);
TextDrawFont(Textdraw0, 1);
TextDrawLetterSize(Textdraw0, 0.800000, 49.399978);
TextDrawColor(Textdraw0, -1);
TextDrawSetOutline(Textdraw0, 0);
TextDrawSetProportional(Textdraw0, 1);
TextDrawSetShadow(Textdraw0, 1);
TextDrawUseBox(Textdraw0, 1);
TextDrawBoxColor(Textdraw0, 255);
TextDrawTextSize(Textdraw0, 0.000000, 0.000000);
Wenn du noch nicht mit Textdraws gearbeitet hast, empfehle ich dir mit Zamaroth's Textdraw Filterscript zu arbeiten -
Ist nicht nötig.
Da dem Spieler nur 1 Checkpoint gesezt werden kann, reicht DisablePlayerCheckpoint(playerid);
mfg
-
Mit SetNameTagDrawDistance(1000.9); setzt du tatsächlich für alle Spieler auf dem Server die Anzeige der SpielerNamen.
Mir fällt keine Samp Funktion ein, die die Namen Anzeige Weite nur für einzelne Spieler ändern würde.
Daher müsstest du mit 3d-Textlabeln arbeiten(wenn es nicht anders geht).
CreatePlayer3DTextLabel sollte dir dabei helfen
-
code wäre nützlich
Anstonsten bei OnPlayerSpawn: abfragen ob der Spieler ein Haus hat, und wenn ja dann dort mit SetPlayerPos hinteleportieren.
Mehr kann ich dir nicht ohne Code helfen
-
Wenn du den Error Bericht lesen würdest, wüsstest du, dass "Fraktion" schon definiert ist.
d.h. Du brauchst beim 2. Mal nicht "new fraktion = 2" sondern höchstens "fraktion=2" zu schreiben.
Aber vorsicht. Du hast da einen Denkfehler: Du fragst nicht ab ob der Spieler in der Fraktion 2 oder 1 ist.
Du definierst fraktion u nd setzt es gleich 1. (Somit wird dies immer! der Fall sein).Schau dir nochmal billabongs Beitrag an.. dort ist es richtig