AdminMod.de
https://www.adminmod.de/

Nead Help !
https://www.adminmod.de/viewtopic.php?t=3747
Seite 1 von 2

Autor:  Ratman2000 [ 29.07.2002, 13:54 ]
Betreff des Beitrags:  Nead Help !

Kan mir jemand erklären, wie ich in einem String ein Wort suchen kann ?
Ich habe den String Status "menu,kick,ban" und will diesen String nun durchsuchen, ob kick drin vorhanden ist.

Ist dies möglich ???
Wen ja kan mir das jemand erklären ?
Was ich gefunden habe ist dies:
Code:
/*
 *  Substitutes all occurences of substring sSubst in string sString with
 *  the string sWith. Returns the number of substitutions, -1 on error.
 */
native strsubst(sString[], sSubst[], sWith[], iMaxLen);
aber wirklich viel damit anfangen kan ich leider nicht.

Und gibt es auch eine Routine, mit der ich z.B. einen Text aus einer Datei auslese und bestimte teile (Wörter) darin mit Strings ersetze ?

Danke für eure Hilfe !

Autor:  Warhead [ 29.07.2002, 17:28 ]
Betreff des Beitrags: 

Dein Problem ist Dein schlechtes Englisch (merkt man auch an Deinem einfallsreichen, falsch geschriebenem Topic). Die Funktion zum Suchen eines Strings in einem String: strstr.

Die Funktion um einen String in einem anderen zu ersetzen, hast Du bereits selbst genannt, auch wenn Du daraus nicht schlau wirst.

Autor:  Ratman2000 [ 29.07.2002, 17:39 ]
Betreff des Beitrags:  Lol

Dab erklär mir doch bitte auch was strstr heist und wie ich es benutze...
und wen ich nach englichgegangen wäre würde es searchstr heissen und nicht strstr
weil bei strstr würde ich auf string string schliessen....
Egal... erklär mir bitte wie ich es benutze

Autor:  [WING] Black Knight [ 29.07.2002, 18:10 ]
Betreff des Beitrags: 

Du suchst doch auch einen String im String...

Autor:  Ratman2000 [ 29.07.2002, 19:05 ]
Betreff des Beitrags:  ???

Und wie benutze ich die Routine ?

Autor:  Warhead [ 29.07.2002, 20:05 ]
Betreff des Beitrags: 

Ganz einfach in einem Adminmod-Plugin...

Autor:  D@T@ [ 30.07.2002, 01:18 ]
Betreff des Beitrags: 

[Bemerkung] Er hat seit dem letzten Topic wenigstens gelernt wie man 'Routine' schreibt ...

Autor:  Ratman2000 [ 31.07.2002, 03:32 ]
Betreff des Beitrags:  Alter...

Diesen Forum kann man echt in die Tonne hauen ! Jetzt weis ich warum nur schlechtes über dieses Forum zu hören ist ! Hier sind nur Arrogante ideoten am labern die warscheinlich netmal ahnung von am haben !
Ansonsten wärt ihr net so bescheuert wie ihr es hier macht !
Ich versuche anderen zu helfen und das nicht mit so schlauen sprüchen wie
In einem Adminmod-Plugin...
Solche sprüche zeigen wieder mal das ihr kein bock habt jemandem zu helfen ! Somit würde ich mal sagen das ihr hier fehl am platze seit !
Den ein fohrum ist dazu da um erfahrungen aus zu tauschen und nicht um dumme sprüche zu reissen !
Meine Frage war ernsthaft gestellt und es wurde seit 3 tagen nicht geschaft zu antworten ! Sowas finde ich richtig peinlich ! Da weis ich auch genau warum es so viele cheater gibt ! Weil anscheinend keiner dem anderen was erklärt ! Fazieht : Es kan nie was grosses gegen cheater kommen, da keiner das komplette wissen oder die möglichkeit es zu erlangen hat ! Dieser forum ist fürn arsch sorry !
Aber ist meine Meinung !

PS: Rechtschreibfehler könt ihr behalten !

CLOSED !

Autor:  Bonsai1 [ 31.07.2002, 08:55 ]
Betreff des Beitrags: 

recht hater

Autor:  [WING] Black Knight [ 31.07.2002, 09:04 ]
Betreff des Beitrags: 

Lieber Ratman2000,

es ist wahr, dass Du hier etwas angegangen wurdest. Wahrscheinlich auch etwas überzogen. Andererseits solltest Du Dich fragen, ob es nicht zur Etiquette gehört, auf eine vernünftige Rechtschreibung zu achten. Das mag vielleicht unter Freunden kein Problem sein, aber in diesem Forum laufen pro Tag etwa 50-60 neue Posts ein und kaum einer hat Lust einen schwer zu entziffernden Text zu lesen. Dass dann einige unwillig reagieren ist vorhersehbar.
Wenn Du schon viel Schlechtes von diesem Forum gehört hast, könnte das auch daran liegen, dass sich hier einige Anfänger mit Fragen melden, die trivial sind und im Handbuch stehen. Wenn dann eine genervte Antwort oder RTFM kommt, wird das in der Regel als persönlich Beleidigung ausgelegt, obwohl nur als kleiner Hinweis gemeint erst das Handbuch zu studieren und dann zu fragen.
Was Deine Frage nach der Benutzung betrifft, so gebe ich Dir mal einen Tipp (Ich kenne die genaue Beutzung auch nicht). Schau Dir einfach mal ein paar Plugins im Quellcode an, die auf Texteingaben im Chat reagieren z.B. plugin_chat.sma (unter examples zu finden). So hole ich mir immer meine Informationen.
Außerdem solltest Du Dir die Funktionsliste auf http://www.adminmod.org/ascript/functions.html mal näher ansehen. Das hilft am Anfang schon sehr weiter.
Wenn Du dann aber nicht weiterkommst und Deine Idee hier postest und das Problem mit etwas Quellcode (auch wenn er nicht funktioniert) dazuschreibst, dann sind hier einige Leute bereit Dir unter die Arme zu greifen.

Autor:  Warhead [ 31.07.2002, 11:57 ]
Betreff des Beitrags: 

Ratman: Auf Deine ernstgemeinte Frage gabs auch meine ernstgemeinte Antwort. Oder weißt Du nicht wie man die Funktion aufruft?

Schauen wir uns mal die Funktion strstr an:

native strstr(sSource[], sSearch[]);

Also, wir haben da den Quellstring (sSource) und einen Suchstring (sSearch). Man könnte jetzt auf die Idee kommen, als Quellstring den String anzugeben, in dem gesucht werden soll. Und man könnte auf die Idee kommen, im Suchstring den String anzugeben, nach dem man sucht. Aber das ist wohl etwas abwegig oder weshalb war Deine Frage?

Mein Kommentare zu den Englischkenntnissen waren nicht als Beleidigung gedacht. Wenn man des Englischen nicht mächtig ist, sollte man wenigstens Übersetzungsprogramme bemühen...

Autor:  Ratman2000 [ 31.07.2002, 14:33 ]
Betreff des Beitrags:  Aha....

So sieht das schon besser aus wenn du mir da auch die verwendung hin schreibst :) aber mit nur strstr kan ich wirklich 0 anfangen !
Hatte auch in die include geschaut aber bin daraus nicht schlau geworden...
Ich möchte euch jetzt hier mal stellen wie ich abfrage ob ein String drin ist !:
Code:
if (strcasestr(UserRecht, KickRecht) != -1) 
{
say("Zugriff Erlaubt");
}
Das ist jetz nur ein Beispiel aber es funzt !

Dan hab ich noch eine Frage zu den Timern !

Wenn ich einen Timer setze
Code:
set_timer("connect",30,1,UserName);
der nach 30 Sec startet und denn UserNamen übergibt dan sieht der Timer dazu so aus:
Code:
public connect(Timer,Repeat,HLName,HLParam) 
{
	new UserName[MAX_DATA_LENGTH];
	new WonID;
	new Text[MAX_DATA_LENGTH];

	convert_string(HLParam,UserName,MAX_NAME_LENGTH);

	get_userWONID(UserName, WonID);
	
	snprintf(Text,MAX_TEXT_LENGTH,"Willkommen %s. Deine Wonid ist %i", UserName, WonID);

	say(Text);

	return PLUGIN_CONTINUE;
}
Aber wenn ich nun auf den Server gehe und dieser Timer gestartet wird (die 30 Sec rum sind so das er los läuft) dan hängt sich mein Server auf.

Kann mir jemand erklären woran das liegt ?
Und wie ich einen korreckten Timer anlege ???

DANKE !

Autor:  Warhead [ 31.07.2002, 14:46 ]
Betreff des Beitrags:  Re: Aha....

Zitat:
So sieht das schon besser aus wenn du mir da auch die verwendung hin schreibst :)
Du willst doch nicht etwa bei jeder Funktion, bei der Du zu faul warst mal etwas drüber nachzudenken, hier im Forum fragen? Also, immer erst mal Dein eigenes Köpfchen anstrengen, bevor Du etwas fragst...

Zu Deinem Timer:

Springt das Programm in die Funktion? Bei welcher Funktion des Timers stürzt der Server ab?

Möglicherweise liegts am Namen des Timers, ich sehe erstmal keine groben Fehler. Benenne ihn doch mal in timer_connect um.

Autor:  Ratman2000 [ 31.07.2002, 15:44 ]
Betreff des Beitrags: 

Code:
Du willst doch nicht etwa bei jeder Funktion, bei der Du zu faul warst mal etwas drüber nachzudenken, hier im Forum fragen? Also, immer erst mal Dein eigenes Köpfchen anstrengen, bevor Du etwas fragst... 
Was soll ich den sonst machen wenn ich aus anderen Scripten und der include nicht schlau werde ? Ich hatte es schon bestimt mit 1000 verschiedenen möglichkeiten versucht.... es hat trotzdem nicht gefunzt !
Sorry aber es gibt auch Leute die Fragen weil sie es nicht wissen !!!!
Und dazu ist bekantlich ein Forum da ! Wenn dir das nicht passt must du auch nicht antworten ! Zum Timer... Ich werds probieren :)

Autor:  Warhead [ 31.07.2002, 16:28 ]
Betreff des Beitrags: 

Du musst mir mal bei Gelegenheit erklären, wie Du mit strstr bei 2 Parametern 1000 falsche Versuche erzielst...

Dein Motto ist wohl: Ich bin nicht gescheitert, ich habe nur 100 Möglichkeiten gefunden, wie es nicht funktioniert...

Autor:  Smudo [ 03.08.2002, 10:45 ]
Betreff des Beitrags: 

Ich habe gerade ein ähnliches Problem.
Das Programm sieht prinzipiell so aus wie das Beispiel von Ratman und der Server stürzt auch genau so wie von Ratman beschrieben ab wenn der Timer ausgeführt wird.
Er hängt sich auf bei (Um bei diesem Beispiel zu bleiben):
Code:
convert_string(HLParam,UserName,MAX_NAME_LENGTH);
Wie kann ich also richtig "UserName" an den Timer übergeben bzw. im Timer wieder an den vorher übergebenen Sting kommen?

Ohne convert_string bekomme ich 1 Zeichen das wirklich nichts mit dem Usernamen zu tun hat und mit, stürzt halt der Server ab.

Autor:  Ratman2000 [ 03.08.2002, 12:26 ]
Betreff des Beitrags:  Jup !

Genau das war auch mein Problem...
Ich hab bis jetzt auch noch keine Lösung gefunden.

Autor:  Warhead [ 04.08.2002, 12:36 ]
Betreff des Beitrags: 

Tja Ratman, wenn Du nicht schreibst was Dein Problem ist, kann Dir auch niemand helfen...

Smudo: Versuch es bitte mal mit MAX_DATA_LENGTH. Ist zwar nicht unbedingt einleuchtend, aber genau so funktionierts in einem meiner Plugins.

Autor:  Smudo [ 05.08.2002, 11:28 ]
Betreff des Beitrags: 

Ne Warhead, mit MAX_DATA_LENGTH hats auch nicht funktioniert. Keine Änderung. Ich werde mal versuchen nicht den Namen sondern die ID zu übergeben (irgendwann heute nach der Arbeit). Vielleicht kannst du mir ja mal den Ausschnitt aus deinem Plugin schicken in dem es geht.

BTW: Wer mal von einem Monster am Campen gehindert werden will oder dem Gegner ein Monster zur Bewachung der Bombe zurücklassen will sollte mal auf unserem Server (213.146.163.208:27018 [TV]Holodeck2002) vorbeischauen :).
Und wenn ich sage Monster, dann meine ich Monster :)

Autor:  Warhead [ 05.08.2002, 13:16 ]
Betreff des Beitrags: 

Hmm, also ich glaube mal das bringts nicht wirklich, aber von mir aus:
Code:
public NamenSindSchallUndRauch(Timer, Repeat, HLUser, HLParam)
{
    new Data[MAX_DATA_LENGTH];

//    [...] weitere Deklarationen
    
    convert_string(HLParam, Data, MAX_DATA_LENGTH);

//    [...] mache irgendwas

}

Ich habe mal alles uninteressante rausgenommen. convert_string() ist die erste Funktion die im Timer aufgerufen wird. Vielleicht stürzt er ja woanders ab?

Seite 1 von 2 Alle Zeiten sind UTC+01:00
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/