Ein neues Thema erstellen  Auf das Thema antworten  [ 18 Beiträge ] 
Autor Nachricht
BeitragVerfasst: 30.05.2002, 14:13 

Registriert: 06.01.2002, 01:00
Beiträge: 110
Wohnort: Hamburg
Ich hab grad gestern ma wieder ein Plugin gemacht.
Es geht um soetwas wie es bei CS Gurad schon üblich ist, nämlich so eine Abstimmung von den einzelnen CLients ob sie aufn Server dürfen.
Stimmen sie bei dieser Abfrage mit ja, so dürfen sie Spielen, mit nein, so dürfen sie es net!
Naja, der Code is folgender:
Code:
#include <core> 
#include <console> 
#include <string> 
#include <admin> 
#include <adminlib> 

#define ACCESS_CONSOLE 131072 
#define ACCESS_ALL 0
new STRING_VERSION[MAX_DATA_LENGTH] = "0.1"; 

new UsersOnConnect[MAX_PLAYERS];
new UOCLlen;

public plugin_connect(HLUserName, HLIP, UserIndex)
{
	new Name[MAX_DATA_LENGTH];
	new WonID;
	convert_string(HLUSerName,Name,MAX_DATA_LENGTH);
	get_userWONID(Name,WonID);	
	UOCLlen=UOCLlen+1;
	UserOnCOnnect[UOCLlen]=WonID;
	return PLUGIN_HANDLED;
}
public OnTeamJoin(HLCommand,HLData,HLUserName,UserIndex)
{
	new Name[MAX_DATA_LENGTH];
	new WonID;
	new ItsIn=0;
	convert_string(HLUserName,Name,MAX_DATA_LENGTH);
	get_userWONID(Name,WonID);
	for (new i=1;i<UOCLlen+1;i=i+1
	{
		if (WonID==UsersOnConnect[i])
		{
			ItsIn=1;
		}
	}
	if (ItsIn==1)
	{
		execclient(Name,"bind 1 serverregelnja");
		execclient(Name,"bind 9 serverregelnnein");
		messageex(Name,"Wenn du die Server Regeln Akzeptierst druecke 1.^nWenn nicht, dann 9",print_tty);
		set_timer(KickPlayer,10,1,WonID);
	}
	return PLUGIN_HANDLED;
}

public serverregelnja(HLCommand,HLData,HLUserName,UserIndex)
{
	new Name[MAX_DATA_LENGTH];
	new WonID;
	new ItsIn=0;
	new j;
	convert_string(HLUserName,Name,MAX_DATA_LENGTH);
	get_userWONID(Name,WonID);
	for (new i=1;i<UOCLlen+1;i=i+1
	{
		if (WonID==UsersOnConnect[i])
		{
			ItsIn=1;
			j=i
		}
	}
	if (ItsIn==1)
	{
		execclient(Name,"bind 1 slot1");
		execclient(Name,"bind 9 slot0");
		for (new i=j;i<UOCLlen;i=i+1
		{	
			UsersOnConnect[i]=UsersOnConnect[i+1];
		}
		UOCLlen=UOCLlen-1;
	}
	else
	{
		messageex(Name,"Gleich zweimal Ja zu den Serverregelns sagen?^nIm richtigen Leben sagst du doch auch nur einmal:^nJA ICH WILL!",print_center);
	}
	return PLUGIN_HANDLED;
}
public serverregelnja(HLCommand,HLData,HLUserName,UserIndex)
{
	new Name[MAX_DATA_LENGTH];
	new WonID;
	new ItsIn=0;
	new j;
	convert_string(HLUserName,Name,MAX_DATA_LENGTH);
	get_userWONID(Name,WonID);
	for (new i=1;i<UOCLlen+1;i=i+1
	{
		if (WonID==UsersOnConnect[i])
		{
			ItsIn=1;
			j=i
		}
	}
	if (ItsIn==1)
	{
		execclient(Name,"bind 1 slot1");
		execclient(Name,"bind 9 slot0");
		for (new i=j;i<UOCLlen;i=i+1
		{	
			UsersOnConnect[i]=UsersOnConnect[i+1];
		}
		UOCLlen=UOCLlen-1;
		messageex(Name,"Dann tschuess!",print_console);
		kick(WonID);
	}
	else
	{
		messageex(Name,"Jetzt doch nicht? Du bist ja launisch!!!^nDann tschues!!",print_console);
		kick(WonID);
	}
	return PLUGIN_HANDLED;
}
		
public KickPlayer(WonID)
{
	new Name[MAX_DATA_LENGTH];
	new WonID;
	new ItsIn=0;
	new j;
	convert_string(HLUserName,Name,MAX_DATA_LENGTH);
	get_userWONID(Name,WonID);
	for (new i=1;i<UOCLlen+1;i=i+1
	{
		if (WonID==UsersOnConnect[i])
		{
			ItsIn=1;
			j=i
		}
	}
	if (ItsIn==1)
	{
		execclient(Name,"bind 1 slot1");
		execclient(Name,"bind 9 slot0");
		for (new i=j;i<UOCLlen;i=i+1
		{	
			UsersOnConnect[i]=UsersOnConnect[i+1];
		}
		UOCLlen=UOCLlen-1;
		messageex(Name,"Wir haben doch keine Zeit!^nNaechstes Mal entscheide dich schneller!",print_console);
		kick(WonID);
	}
	return PLUGIN_HANDLED;
}
		
	
	
	
	

public plugin_init() 
{ 
   plugin_registerinfo("Server-Rulez","Give the player a choose to even confirm with the rules and play  or to go",STRING_VERSION); 
   plugin_registercmd("OnTeamJoin", "OnTeamJoin", ACCESS_CONSOLE, ""); 
   plugin_registercmd("serverregelnja", "serverregelnja", ACCESS_ALL, ""); 
   plugin_registercmd("serverregelnnein", "serverregelnnein", ACCESS_ALL, ""); 
   plugin_registercmd("KickPlayer","KickPlayer",ACCESS_CONSOLE,"");
    
   exec( "logd_reg 54 admin_command OnTeamJoin" ); 
   
   return PLUGIN_CONTINUE; 
} 
Sorry wegen der nicht komentierung!

Wenn ich den code jetzt kompelieren möchte (WinXP) versucht der compiler das gar net erst, sondern gibt folgende Fehlermeldung:
(Wohlgemerkt:KEINE ZEILE IN DER DOS BOX!!!EINE WINDOWS MSGBOX!)

Bild

Was heißt das??

Wo is der Fehler??
Alle andren Sachen kann ich normal compilen??

DAAAANKE!!!

kowalski

_________________
www.netkowalski.de

www.teamclan.net


Nach oben
   
BeitragVerfasst: 30.05.2002, 14:37 
HLDS Team
Benutzeravatar

Registriert: 26.11.2001, 01:00
Beiträge: 676
Tchja, da kommt der kompiler nicht durch, hast wohl einen zu komplizierten Code gebastelt den der nicht versteht ;)!!
Naja, da steht ja
Code:
vclass!=sGlobal ||findgib(name)==NULL, file sc2.c, line 1400
Code:
vclass ist ungleich sGlobal oder findgib(name)entspricht Null, bei datei sc2.c, Zeile 1400
Tchja, das hast du wahrscheinlich auch verstanden ;)
Da kommt der kompiler ins schleudern, vielleicht eine Lücke des kompilers?


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 30.05.2002, 14:51 

Registriert: 06.01.2002, 01:00
Beiträge: 110
Wohnort: Hamburg
LOL!
Ja, alles verstanden! :lol:

Irgendn Lösungsvorschlag??

_________________
www.netkowalski.de

www.teamclan.net


Nach oben
   
BeitragVerfasst: 30.05.2002, 18:11 
AM.de Team
Benutzeravatar

Registriert: 22.10.2001, 01:00
Beiträge: 839
Zitat:
Code:
public serverregelnja(HLCommand,HLData,HLUserName,UserIndex)
/* ... */
public serverregelnja(HLCommand,HLData,HLUserName,UserIndex)

Faellt Dir was auf?

_________________
There are no stupid questions, only stupid people.


Nach oben
   
BeitragVerfasst: 30.05.2002, 20:22 
HLDS Team
Benutzeravatar

Registriert: 26.11.2001, 01:00
Beiträge: 676
lol, aua


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 31.05.2002, 00:58 
AM.de Team
Benutzeravatar

Registriert: 27.11.2001, 01:00
Beiträge: 3564
Wohnort: In der Nähe von Bonn
ich bin mir nicht sicher, aber ich glaube, dass Event 54 auch nicht funktioniert...Bitte sag, dass Du schon Erfahrung damit gemacht hast und das er funktioniert. Ich brauche ihn :-)

_________________
Fehleranalyse: Poste den Inhalt Deiner liblist.gam, (listen)server.cfg, adminmod.cfg, users.ini, vault.ini, plugin.ini von adminmod und plugins.ini von metamod. Benutze auch die Such-Funktion


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 31.05.2002, 13:03 

Registriert: 06.01.2002, 01:00
Beiträge: 110
Wohnort: Hamburg
Danke daRope!
Ich weiß nicht mehr das wievielte mehr du mich jetzt schon auf solche lapidaren Sachen aufmerksam gemacht hast!!!
Aber auch ins chwierigen Fragen hast du Ahnung!! Vielen Dank deshalb nochma für alles!

Und zu dem Plugin:
WIE DUMM BIN ICH???
Oh man, ich wollt sie doch noch umbennen!!!

danke!!!!!

kowalski

_________________
www.netkowalski.de

www.teamclan.net


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 31.05.2002, 13:08 

Registriert: 06.01.2002, 01:00
Beiträge: 110
Wohnort: Hamburg
Mist!
ich hab das mit dem namen geändert.
und auch ma versucht anstatt 54 einfach mal was anderes zu nehmen.
Aber der Fehler bleibt der gleiche!!
GLeich heul ich :cry:

hier der neue code:
Code:
#include <core> 
#include <console> 
#include <string> 
#include <admin> 
#include <adminlib> 

#define ACCESS_CONSOLE 131072 
#define ACCESS_ALL 0
new STRING_VERSION[MAX_DATA_LENGTH] = "0.1"; 

new UsersOnConnect[MAX_PLAYERS];
new UOCLlen;

public plugin_connect(HLUserName, HLIP, UserIndex)
{
	new Name[MAX_DATA_LENGTH];
	new WonID;
	convert_string(HLUSerName,Name,MAX_DATA_LENGTH);
	get_userWONID(Name,WonID);	
	UOCLlen=UOCLlen+1;
	UserOnCOnnect[UOCLlen]=WonID;
	return PLUGIN_HANDLED;
}
public OnTeamJoin(HLCommand,HLData,HLUserName,UserIndex)
{
	new Name[MAX_DATA_LENGTH];
	new WonID;
	new ItsIn=0;
	convert_string(HLUserName,Name,MAX_DATA_LENGTH);
	get_userWONID(Name,WonID);
	for (new i=1;i<UOCLlen+1;i=i+1
	{
		if (WonID==UsersOnConnect[i])
		{
			ItsIn=1;
		}
	}
	if (ItsIn==1)
	{
		execclient(Name,"bind 1 serverregelnja");
		execclient(Name,"bind 9 serverregelnnein");
		messageex(Name,"Wenn du die Server Regeln Akzeptierst druecke 1.^nWenn nicht, dann 9",print_tty);
		set_timer(KickPlayer,10,1,WonID);
	}
	return PLUGIN_HANDLED;
}

public serverregelnja(HLCommand,HLData,HLUserName,UserIndex)
{
	new Name[MAX_DATA_LENGTH];
	new WonID;
	new ItsIn=0;
	new j;
	convert_string(HLUserName,Name,MAX_DATA_LENGTH);
	get_userWONID(Name,WonID);
	for (new i=1;i<UOCLlen+1;i=i+1
	{
		if (WonID==UsersOnConnect[i])
		{
			ItsIn=1;
			j=i
		}
	}
	if (ItsIn==1)
	{
		execclient(Name,"bind 1 slot1");
		execclient(Name,"bind 9 slot0");
		for (new i=j;i<UOCLlen;i=i+1
		{	
			UsersOnConnect[i]=UsersOnConnect[i+1];
		}
		UOCLlen=UOCLlen-1;
	}
	else
	{
		messageex(Name,"Gleich zweimal Ja zu den Serverregelns sagen?^nIm richtigen Leben sagst du doch auch nur einmal:^nJA ICH WILL!",print_center);
	}
	return PLUGIN_HANDLED;
}
public serverregelnnein(HLCommand,HLData,HLUserName,UserIndex)
{
	new Name[MAX_DATA_LENGTH];
	new WonID;
	new ItsIn=0;
	new j;
	convert_string(HLUserName,Name,MAX_DATA_LENGTH);
	get_userWONID(Name,WonID);
	for (new i=1;i<UOCLlen+1;i=i+1
	{
		if (WonID==UsersOnConnect[i])
		{
			ItsIn=1;
			j=i
		}
	}
	if (ItsIn==1)
	{
		execclient(Name,"bind 1 slot1");
		execclient(Name,"bind 9 slot0");
		for (new i=j;i<UOCLlen;i=i+1
		{	
			UsersOnConnect[i]=UsersOnConnect[i+1];
		}
		UOCLlen=UOCLlen-1;
		messageex(Name,"Dann tschuess!",print_console);
		kick(WonID);
	}
	else
	{
		messageex(Name,"Jetzt doch nicht? Du bist ja launisch!!!^nDann tschues!!",print_console);
		kick(WonID);
	}
	return PLUGIN_HANDLED;
}
		
public KickPlayer(WonID)
{
	new Name[MAX_DATA_LENGTH];
	new WonID;
	new ItsIn=0;
	new j;
	convert_string(HLUserName,Name,MAX_DATA_LENGTH);
	get_userWONID(Name,WonID);
	for (new i=1;i<UOCLlen+1;i=i+1
	{
		if (WonID==UsersOnConnect[i])
		{
			ItsIn=1;
			j=i
		}
	}
	if (ItsIn==1)
	{
		execclient(Name,"bind 1 slot1");
		execclient(Name,"bind 9 slot0");
		for (new i=j;i<UOCLlen;i=i+1
		{	
			UsersOnConnect[i]=UsersOnConnect[i+1];
		}
		UOCLlen=UOCLlen-1;
		messageex(Name,"Wir haben doch keine Zeit!^nNaechstes Mal entscheide dich schneller!",print_console);
		kick(WonID);
	}
	return PLUGIN_HANDLED;
}
		
	
	
	
	

public plugin_init() 
{ 
   plugin_registerinfo("Server-Rulez","Give the player a choose to even confirm with the rules and play  or to go",STRING_VERSION); 
   plugin_registercmd("OnTeamJoin", "OnTeamJoin", ACCESS_CONSOLE, ""); 
   plugin_registercmd("serverregelnja", "serverregelnja", ACCESS_ALL, ""); 
   plugin_registercmd("serverregelnnein", "serverregelnnein", ACCESS_ALL, ""); 
   plugin_registercmd("KickPlayer","KickPlayer",ACCESS_CONSOLE,"");
    
   exec( "logd_reg 54 admin_command OnTeamJoin" ); 
   
   return PLUGIN_CONTINUE; 
} 
also is nich viel anders

kowalski

_________________
www.netkowalski.de

www.teamclan.net


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 31.05.2002, 13:32 

Registriert: 27.02.2002, 14:50
Beiträge: 262
Wohnort: Hall in Tirol
probe probe

_________________
This shit got Pop -[Shorty´s Skateboard Stuff]-


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 31.05.2002, 20:21 
AM.de Team
Benutzeravatar

Registriert: 22.10.2001, 01:00
Beiträge: 839
Man, man, man. Wenn ihr Hanseln euch mal angewoehnen wuerdet a) gescheite Editoren zu benutzen und b) in einem gescheiten Codestil zu schreiben, dann koennte ich mir sowas hier sparen. In was schreibst Du sowas, in Notepad?

Jung, hol dir mal einen Codeeditor, der den Namen auch verdient. Dann wuerdest Du merken, dass in Deinem Code massiv viele Klammern fehlen. Und zwar hier
Code:
for (new i=1;i<UOCLlen+1;i=i+1 <------
Aber ueberall, wo diese Schleife vorkommt. (Scheis Cut-n-Paste Programmierung. :))

Nicht, dass es das wirklich besser machen wuerde. Dann bleiben naemlich noch 26 Errors und Warning ueberig. Aber die kannst Du dann ja wenigstens Zeile fuer Zeile beheben. ;)

_________________
There are no stupid questions, only stupid people.


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 01.06.2002, 16:44 

Registriert: 06.01.2002, 01:00
Beiträge: 110
Wohnort: Hamburg
Danke! Schonwieder isses daRope :)
Zum Editor: Ich benutz Ultraedit, und finds eigentlich ganz gut!
Das mit den Klammern is echt peinlich, aber naja ich häts ja gemerkt hät der kompiler mir was gescheites angezeigt.
Die Errors etc krieg ich eigentlich immer :wink: Aber das sind meist eh nur flüchtigkeits Fehler. Genau wie die Klammern.

Naja, danke nochma!

kowalski

_________________
www.netkowalski.de

www.teamclan.net


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 01.06.2002, 17:01 
AM.de Team
Benutzeravatar

Registriert: 22.10.2001, 01:00
Beiträge: 839
Tja, *mir* hat der Compiler was vernuenftiges angezeigt, jedenfalls halbwegs. :) Bei mir stand da naemlich auch noch was von "add variable", was ja schonmal ein Hinweis ist.

UltraEdit, hmm, beherrscht der keine ordentliche Einrueckung? Wahrscheinlich nicht, kann ja so gut wie kein Editor. Oder auf falsche Klammerung pruefen?

_________________
There are no stupid questions, only stupid people.


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 01.06.2002, 18:51 
HLDS Team
Benutzeravatar

Registriert: 26.11.2001, 01:00
Beiträge: 676
Where I get the Codeeditor?


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 01.06.2002, 19:14 

Registriert: 30.03.2002, 12:47
Beiträge: 378
Wohnort: Österreich/Umgebung Linz
jetzt trumpfst du aber auf, was?

In this case it's clear necessary that you look first at www.google.com before you ask for something you might find way faster by searching for it yourself...

Neither you took a closer look at some famous C Sites nor one at search engines, otherwise you would allready have an answer to your question!

Perhaps daRope knows a better one... (of course he thinks so) :wink:

And by the way i guess you mean: Where DO i get AN Codeeditor?

_________________
AdminMod Neuling? Alles Schritt für Schritt gibts hier

ich bin root ich darf das ;-)

(sic)Sena+or


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 01.06.2002, 19:25 
AM.de Team
Benutzeravatar

Registriert: 22.10.2001, 01:00
Beiträge: 839
Wuerdet ihr bitte das Denglisch abstellen? Danke.

_________________
There are no stupid questions, only stupid people.


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 01.06.2002, 20:01 

Registriert: 30.03.2002, 12:47
Beiträge: 378
Wohnort: Österreich/Umgebung Linz
roger that :wink:

_________________
AdminMod Neuling? Alles Schritt für Schritt gibts hier

ich bin root ich darf das ;-)

(sic)Sena+or


Zuletzt geändert von Sena+or1 am 01.06.2002, 20:02, insgesamt 1-mal geändert.

Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 01.06.2002, 20:01 

Registriert: 30.03.2002, 12:47
Beiträge: 378
Wohnort: Österreich/Umgebung Linz
okay okay bin ja schon ruhig :lol:

_________________
AdminMod Neuling? Alles Schritt für Schritt gibts hier

ich bin root ich darf das ;-)

(sic)Sena+or


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 01.06.2002, 20:09 
AM.de Team
Benutzeravatar

Registriert: 22.10.2001, 01:00
Beiträge: 839
:lol:

_________________
There are no stupid questions, only stupid people.


Nach oben
   
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen  Auf das Thema antworten  [ 18 Beiträge ] 


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Powered by phpBB® Forum Software © phpBB Limited
Deutsche Übersetzung durch phpBB.de
Original Design von "[ Half-Life Admin Mod © Alfred Reynolds 2000-2003 ] - [ site design by Jägermeister ]"