Ein neues Thema erstellen  Auf das Thema antworten  [ 14 Beiträge ] 
Autor Nachricht
BeitragVerfasst: 20.11.2002, 22:36 

Registriert: 01.12.2001, 01:00
Beiträge: 69
Hab mal ein plugin drangehangen. Kann mir das mal jemand an die "Mapverwechselnde" AM v2.50.50 anpassen? Mit AM vb2.50.42 läuft es prima und wechselt auch zur richtigen Map, nur mit 2.50.50 wiederholt es immer wieder ein und die selbe Map.

THX

_________________
Visit-->KriegsGeBiet
ServerIP: [url=hlsw://213.202.202.177:27015]213.202.202.177:27015[/url]


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 20.11.2002, 22:54 
AM.de Team
Benutzeravatar

Registriert: 27.11.2001, 01:00
Beiträge: 3564
Wohnort: In der Nähe von Bonn
ja wie Schnuffer...

Hast Du nicht gehört, dass das nextmap-Problem in der AM 50.50 gelöst worden ist?

Einfach das changelevel löschen.

_________________
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: 20.11.2002, 23:13 

Registriert: 01.12.2001, 01:00
Beiträge: 69
OK ich nehm's mal raus und probier nochmal. Melde mich dann ob's geht.

_________________
Visit-->KriegsGeBiet
ServerIP: [url=hlsw://213.202.202.177:27015]213.202.202.177:27015[/url]


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 21.11.2002, 01:56 
AM.de Team
Benutzeravatar

Registriert: 27.11.2001, 01:00
Beiträge: 3564
Wohnort: In der Nähe von Bonn
ok.sollte danach klappen.

Er merkt sich nämlich jetzt, welche map man mit admin_map gewechselt hat und wechselt dann später wieder zur der map, die regulär im Mapcycle, nach der zuletzt regulären Map nach Mapcycle, dran ist.

Hm..mein Satzbau war auch schonmal besser...bin müde.

_________________
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: 21.11.2002, 04:44 

Registriert: 01.12.2001, 01:00
Beiträge: 69
Jo funzt jetzt. Was passiert wenn ich per rcon wechsle? Aso und ich hab das Timerem etwas verarscht, damit es auch genau bei 0 die Map wechselt ohne changelevel. Hab das Original mp_timeleft ausgelesen und - 1 gesetzt. Hoffe das funzt dann auch bei map extend vote.

_________________
Visit-->KriegsGeBiet
ServerIP: [url=hlsw://213.202.202.177:27015]213.202.202.177:27015[/url]


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 21.11.2002, 09:50 
AM.de Team
Benutzeravatar

Registriert: 23.11.2001, 00:00
Beiträge: 3842
Wohnort: Vor König Arthus
changelevel bekommt er nicht mit. Es werden ausschließlich die AM-Commands abgefangen. Changelog lesen lohnt sich. ;)

EDIT:
Wie mp_timeleft ausgelesen? Die Variable existiert zwar, wird aber nicht genutzt und steht daher standardmäßig immer auf 0! Oder ist das "Kriegsgebiet" neuerdings ein TFC-Server?

_________________
Der schwarze Ritter triumphiert immer...
WING-Clan


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 21.11.2002, 11:53 
AM.de Team
Benutzeravatar

Registriert: 27.11.2001, 01:00
Beiträge: 3564
Wohnort: In der Nähe von Bonn
mp_timelimit auf -1 gesetzt.

Ein kleiner override :-) Nette Idee.

_________________
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: 21.11.2002, 14:34 

Registriert: 01.12.2001, 01:00
Beiträge: 69
Um es für alle anschaulich zu machen, Poste ich es jetzt nochmal.
Code:
#include <core>
#include <console>
#include <string>
#include <admin>
#include <adminlib>

#define ACCESS_CONSOLE 131072

new STRING_VERSION[MAX_DATA_LENGTH] = "1.6";

new GameCommencing=0;
new checktime;
new origtimelimit;
new timer;

public timerem2_welt(HLCommand,HLData,HLUserName,UserIndex){
        new Data [MAX_DATA_LENGTH];
        new x [MAX_DATA_LENGTH];
        new dummy[MAX_DATA_LENGTH];
                                        
        convert_string( HLData, Data, MAX_DATA_LENGTH );
        strsplit(Data,"_",x,MAX_DATA_LENGTH,dummy,MAX_DATA_LENGTH);
                        
        if(strcmp(x,"Game")==0 && GameCommencing == 0){
                GameCommencing = 1;
                checktime =systemtime();
                origtimelimit = getvar("mp_timelimit")*60+2;
                kill_timer(timer);
                timer=set_timer("warn",1, 0);
        }
        else if(strcmp(x,"Restart")==0){
                origtimelimit =getvar("mp_timelimit")*60+2;
                checktime = systemtime();
                kill_timer(timer);
                timer=set_timer("warn",1,0);
        }
        else if(strcmp(x,"Round")==0){
                if (getvar("mp_timelimit")*60+2 != origtimelimit){
                        checktime = systemtime()-(systemtime()- checktime);
                        origtimelimit= getvar("mp_timelimit")*60+2;     
                        kill_timer(timer);
                        timer=set_timer("warn",1,0);
                }
        }
        return PLUGIN_CONTINUE;
}
public warn(Timer,Repeat,HLUser,HLParam)
{
        new a;
        new time;
                
        if (getvar("mp_timelimit")*60+2 != origtimelimit){
                checktime = systemtime()-(systemtime()- checktime);
                origtimelimit= getvar("mp_timelimit")*60+2;     
        }
        
        time = (origtimelimit-(systemtime()-checktime));
        
        switch(time){
                case 1800:{
                        execclient_all("speak ^"fvox/thirty minutes remaining^"");
                        centersay("30 Minuten noch...",6,0,255,0);
                        a = 300;
                }
                case 1500:{
                        execclient_all("speak ^"fvox/twenty five minutes remaining^"");
                        centersay("25 Minuten noch...",6,0,255,0);
                        a = 300;
                }
                case 1200:{
                        execclient_all("speak ^"fvox/twenty minutes remaining^"");
                        centersay("20 Minuten noch...",6,0,255,0);
                        a = 300;
                }
                case 900:{
                        execclient_all("speak ^"fvox/fifteen minutes remaining^"");
                        centersay("15 Minuten noch...",6,0,255,0);
                        a = 300;
                }
                case 600:{
                        execclient_all("speak ^"fvox/ten minutes remaining^"");
                        centersay("10 Minuten noch...",6,0,255,0);
                        a = 300;
                }
                case 300:{
                        execclient_all("speak ^"fvox/five minutes remaining^"");
                        centersay("5 Minuten noch...",6,0,255,0);
                        a = 180;
                }
                case 120:{
                        execclient_all("speak ^"fvox/two minutes remaining^"");
                        centersay("2 Minuten noch...",6,0,255,0);
                        a = 60;
                }
                case 60:{
                        execclient_all("speak ^"fvox/sixty seconds remaining^"");
                        centersay("60 Sekunden noch...",6,255,0,0);
                        a = 40;
                }
                case 20:{
                        execclient_all("speak ^"you are authorized for a advanced level^"");
                        centersay("20 Sekunden noch...",6,255,0,0);
                        a = 10;
                }
                case 10:{
                        execclient_all("speak ^"ten seconds remaining^"");
                        centersay("10 Sekunden noch...",5,255,0,0);
                        a = 5;
                }
                case 5:{
                        execclient_all("speak ^"five^"");
                        centersay("Five",1,255,0,0);
                        a = 1;
                }       
                case 4:{
                        execclient_all("speak ^"four^"");
                        centersay("Four",1,255,0,0);
                        a = 1;
                }       
                case 3:{
                        execclient_all("speak ^"three^"");
                        centersay("Three",1,255,0,0);
                        a = 1;
                }       
                case 2:{
                        execclient_all("speak ^"two^"");
                        centersay("Two",1,255,0,0);
                        a = 1;
                }       
                case 1:{
                        execclient_all("speak ^"one^"");
                        centersay("One",1,255,0,0);
                        a = 1;
                }
Hier nun der Bereich wo ich as timelimit verändere:
Code:
case 0:{
                	new ExecCommand[MAX_DATA_LENGTH];
			new Timelimit = 0;
			Timelimit = getvar("mp_timelimit") - 1;
			snprintf(ExecCommand, MAX_DATA_LENGTH, "mp_timelimit %i", Timelimit);
			exec(ExecCommand);
			execclient_all("speak ^"this round is over^"");
                }
                default:{
                        if(time>1800){
                                a = time-1800;
                        }else if(time<1800 && time>1500){
                                a = time - 1500;
                        }else if(time<1500 && time>1200){
                                a = time - 1200;
                        }else if(time<1200 && time>900){
                                a = time - 900;
                        }else if(time<900 && time>600){
                                a = time - 600;
                        }else if(time<600 && time>300){
                                a = time - 300;
                        }else if(time<300 && time>120){
                                a = time - 120;
                        }else if(time<120 && time>60){
                                a = time - 60;
                        }else if(time<60 && time>30){
                                a = time - 30;
                        }else{
                                a=1;
                        }
                }
        }
        timer=set_timer("warn",a, 0);
        return PLUGIN_CONTINUE;
}
public plugin_init(){
        plugin_registerinfo("Time Remaining Counter","Just a countdown until the Map over.",STRING_VERSION);
        plugin_registercmd("timerem2_welt", "timerem2_welt", ACCESS_CONSOLE);
        exec("logd_reg 62 admin_command timerem2_welt");
        checktime =systemtime();
        origtimelimit = getvar("mp_timelimit")*60+2;
        timer=set_timer("warn",1, 0);
        return PLUGIN_CONTINUE;
}
@BlackKnight
Ich hatte bei case 0: hatte ich die nextmap ausgelesen und die dann mit changelevel(Map,3); gewechselt

_________________
Visit-->KriegsGeBiet
ServerIP: [url=hlsw://213.202.202.177:27015]213.202.202.177:27015[/url]


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 21.11.2002, 17:43 
AM.de Team
Benutzeravatar

Registriert: 23.11.2001, 00:00
Beiträge: 3842
Wohnort: Vor König Arthus
Schon klar. Sorry, ich hatte es nicht verstanden, da Du mp_timeleft geschrieben hast und nicht mp_timelimit.
BTW, ich meine mich zu erinnern, dass die changelevel Funktion bereits das Timelimit auf 1 setzt. Außerdem ist mir mal aufgefallen, dass eine Änderung des Timelimits innerhalb der ersten 3 Minuten einer Map keine Auswirkung hat. Das Timelimit kann zwar auf 1 gesetzt werden, der Mapchange kommt aber erst nach Ablauf der besagten 3 Minuten. Wenn man trotzdem früher wechseln will, muss man halt die changelevel Funktion verwenden.

_________________
Der schwarze Ritter triumphiert immer...
WING-Clan


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 21.11.2002, 19:57 

Registriert: 01.12.2001, 01:00
Beiträge: 69
Da habe ich aber andere erfahrungen gemacht. Habe das plugin mit mp_timelimit 2 getestet und bei 1 Mintute das timelimit auf 1 gesetzt. Somit wechselte die Map da ja das timelimit von 2 auf 1 gesetzt wurde und die 1 Minute ja abgelaufen war.

Scheiß Deutsch ;)

_________________
Visit-->KriegsGeBiet
ServerIP: [url=hlsw://213.202.202.177:27015]213.202.202.177:27015[/url]


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

Registriert: 27.11.2001, 01:00
Beiträge: 3564
Wohnort: In der Nähe von Bonn
auch mal ein Beispiel.(Ist das selbe, was Schnuffer gesagt hat)

Du hast mp_timelimit auf 30.

Nach 29 Minuten setzt du das mp_timelimit auf 20. Und es kommt zum Mapwechsel, da er -9 in den Miesen ist.

_________________
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: 21.11.2002, 21:07 

Registriert: 27.05.2002, 12:14
Beiträge: 541
Wohnort: im Osten ;)
"beisst" sich das plugin mit irgendeinem anderen?

hatte mal soetwas gehört...

oder ist das schon ne "verbesserte" version? :oops:


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 21.11.2002, 21:40 

Registriert: 01.12.2001, 01:00
Beiträge: 69
Bis jetzt hab ich noch keine Probleme damit. Hab auch ne ganze Stange plugins im Kriegsgebiet laufen, aber bis jetzt "beissten" sich sich nicht.

_________________
Visit-->KriegsGeBiet
ServerIP: [url=hlsw://213.202.202.177:27015]213.202.202.177:27015[/url]


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 22.11.2002, 00:29 
AM.de Team
Benutzeravatar

Registriert: 23.11.2001, 00:00
Beiträge: 3842
Wohnort: Vor König Arthus
Das mit dem Timelimit kleiner als die abgelaufene Zeit setzen ist schon klar. Mir war nur bei einem Plugintest mal aufgefallen, dass das innerhalb der ersten 3 Minuten seltsamerweise nicht ging (Ich hatte mp_timelimit auf 1 gesetzt). Und pünktlich am Ende der 3 Minuten kam der Mapwechsel. Und das war reproduzierbar. Das war bei der Diskussion mit daRope über die nextmap-Funktion. Ich wollte doch ausprobieren, welche Map als nächstes kam bzw. angezeigt wurde, und musste immer 3 Minuten warten. Erinnerst Du Dich noch Sir?

_________________
Der schwarze Ritter triumphiert immer...
WING-Clan


Nach oben
   
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen  Auf das Thema antworten  [ 14 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 ]"