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

PLUGIN: VOTE_FOR_IT mit Sounds
https://www.adminmod.de/viewtopic.php?t=4309
Seite 7 von 14

Autor:  Sir Drink a lot [ 12.12.2002, 18:21 ]
Betreff des Beitrags: 

ok. wird überprüft.

/*Nachtrag*/

Mist gebaut...korrigiere es gleich.
!!!Ich will einen Befehl setvar!!!

Autor:  Rinde [ 12.12.2002, 20:13 ]
Betreff des Beitrags: 

Zitat:
!!!Ich will einen Befehl setvar!!!
ICH AUCH

Autor:  Sir Drink a lot [ 12.12.2002, 20:59 ]
Betreff des Beitrags: 

Ach was solls.

Stellen wir eben ab einem Zeitpunkt mit einem Timer in der plugin_init die vote_freq auf 0.

Mit Verschieben ist nicht mehr, da wir uns ja am Ende der Mapzeit befinden.

Zeitpunkt = mp_timelimit*60 - (Die Nominierungszeit + 30 sekunden Votezeit + 10 sekunden Lagzeit + vote_freq) . Dann wird vote_freq abgeschaltet und damit die grafischen Votes. Und am Ende der Nominierungszeit stelle ich es wieder auf die Original vote_freq zurück.

Was das bedeutet, kann sich jeder ausrechnen. Deswegen zweifle ich noch...

Mal sehen...

Autor:  DarkEyes1 [ 12.12.2002, 21:06 ]
Betreff des Beitrags: 

zum post von metaxa...:

automatischer vote kommt bei mir...

vote sound abstellen hab ich noch nicht versucht...

das mit admin_vote_awp 20 das dann 2 sec zeit sind, hab ich nur manchmal... waran es auch immer liegen mag...


außerdem nutze ich ein kaufscript, wenn der vote zufällig (kommt öfter vor) auf den mapanfang fällt, ich kaufe hab ich gevotet. obwohl ich nicht gevotet habe... wie kann ich das verhindern? wahrscheinlich gar nicht..., oder?

Autor:  Sir Drink a lot [ 12.12.2002, 21:23 ]
Betreff des Beitrags: 

nein, ohne Logd gar nicht.

Das mit der Votezeit habe ich etwas verbuggt. Wird gefixt.

Das Nominating kommt bei mir auch automatisch. Kann also diesen Fehler nicht finden.

admin_vote_sound geht auch. (ging in den vorherigen Versionen nicht!)

Änderungen, die ich gerade mache:
- admin_vote_rr erhält neben der optionalen votetime keinen Parameter mehr . sv_restartround wird generell nach 1 sek ausgeführt, wenn der vote dafür erfolgreich war. War meines Erachtens unsinnig, da noch einen 2ten Parameter für das Abwarten des restartrounds zu nutzen.

- die vote_freq wird abgeschaltet, nach dem Zeitschema, dass ich oben erläutert habe.

Autor:  DarkEyes1 [ 12.12.2002, 21:35 ]
Betreff des Beitrags: 

nach dem automatischen mapvote, wird die map sofort gewechselt...
is ja gut, aber eigendlich schlecht... sind immer noch 2 min zu spielen und die map wechselt... hab timelimit 30 min, dadurch spielen wir nur 28 min...

was passiert eigendlich, wenn gar keiner votet? konnte das nicht testen, server war immer voll, einer hat immer gevotet...

Autor:  Sir Drink a lot [ 12.12.2002, 21:49 ]
Betreff des Beitrags: 

hm..das darf eigentlich nicht passieren.

Ausser, die Zeit zwischen Mapstart und GameCommencing beträgt 2 Min.

Wenn der Server nicht laggt, sollten nur 10 sekunden der eigentlich Mapzeit verloren gehen.

Wenn keiner Vorschläge macht, gibts auch keinen Vote und die Map wird normal nach cycle gewechselt.

Autor:  DarkEyes1 [ 12.12.2002, 22:00 ]
Betreff des Beitrags: 

Zitat:
hm..das darf eigentlich nicht passieren.

Ausser, die Zeit zwischen Mapstart und GameCommencing beträgt 2 Min.
passiert aber, was nun? map wechselt sofort nach erfolgreichem (automatischen) multivote...

Autor:  metaxa [ 12.12.2002, 22:02 ]
Betreff des Beitrags: 

SDaL schrieb folgendes:

/*Anmerkung*/
-Das Plugin ist ein Ersatz für den standard hldsld-Vote!



Hmm..

kann es ein das bei mir der vote nicht kommt, da ich das standard hldsld vote plugin deaktiviert habe ?

metaxa

Autor:  DarkEyes1 [ 13.12.2002, 08:05 ]
Betreff des Beitrags: 

Zitat:
/*Anmerkung*/
-Das Plugin ist ein Ersatz für den standard hldsld-Vote!
nein, wie du es schon richti erkannt hast... es ist ersatz... ich habs auch deaktiviert....

Autor:  Sir Drink a lot [ 13.12.2002, 12:07 ]
Betreff des Beitrags: 

Ich sag ja, dass die timer manchmal sehr instabil sind und ausfallen.

Ich überlege mir gerade ein neues Konzept.

Ein VFI-ADDON Plugin, welches auch LogD benutzt. (Aber LogD ist nicht zwingend notwendig).

Dies soll dann die Zeitsteuerung übernehmen, womit man auch kontrollieren kann, was mit der Zeitsteuerung los ist.

Ich nehme die Timer aus dem Hauptplugin wieder raus.

Autor:  DarkEyes1 [ 13.12.2002, 13:25 ]
Betreff des Beitrags: 

also dieses plugin ist sehr genau...
benutze es auch mit dem cw-creator...

#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;
}
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;
}

Autor:  Sir Drink a lot [ 13.12.2002, 14:54 ]
Betreff des Beitrags: 

ja,ja...wer hat das plugin wohl geschrieben :-)

das Prinzip wollte ich übernehmen.

Autor:  DarkEyes1 [ 13.12.2002, 17:46 ]
Betreff des Beitrags: 

:wink:

Autor:  Ne0z3d [ 17.12.2002, 18:10 ]
Betreff des Beitrags: 

mal ne ganz dumme frage wo krieg ich denn die sounds her? Entweder ich hab was übersehen oder die sind net in den zips drin!

Autor:  Sir Drink a lot [ 17.12.2002, 18:14 ]
Betreff des Beitrags: 

die müssen hier irgendwo im Thread versteckt sein...oder im Forum..mal suchen

/*
ich bin soooo nett und suche:
http://board.battlenation.de/viewtopic. ... sounds+zip

man muss eben wissen, was man in die 'suche' eingibt...sounds+zip
*/

Autor:  metaxa [ 17.12.2002, 18:48 ]
Betreff des Beitrags:  Ne Frage zur Nominierung

Hi

Ich werde wohl den Scheduler BK Cron von Black Knight installieren.
Ich möchte Ihn hauptsächlich dazu nutzen, um verschiedene Mapcycles laufen zu lassen.

Daher meine Frage:

Können beim admin_vote_multimap nur die Maps aus Mapcycle.txt file oder alle nominiert werden ?


Greets

metaxa

Autor:  Sir Drink a lot [ 17.12.2002, 19:17 ]
Betreff des Beitrags: 

bisher alle, die sich eben auf dem server befinden.

Irgendwann, wenn ich wieder mehr Lust habe, mache ich noch eine denymap.ini

Da kommen dann die maps rein, die gar nicht 'vom volke' nominiert werden dürfen, bzw. auch die maps mit einer Zeitangabe, die vor kurzem erst gelaufen sind.

Aber das ist Zukunftsmusik.

Hm...auch eine gute Idee, den bk_cronjob dafür zu nutzen, um den multimap automatisch zu starten. Oder? *was für eine Symbiose*

Dann brauche ich mir nicht die Zähne an den dummen Timern auszubeissen.

Autor:  metaxa [ 17.12.2002, 20:09 ]
Betreff des Beitrags: 

@Sir Drink a lot

hmm..

Die Idee ist nicht schlecht wäre aber nur ne Notlösung.

Besser war da deine Lösung bei dem alten Vote for it mit dem angepassten Timermem 2

Da kam der Vote immer :wink:

Greets

metaxa

Autor:  metaxa [ 17.12.2002, 21:21 ]
Betreff des Beitrags: 

So hab mal in den tiefen meiner Festplatte gekramt,
da hab ich das timermem2 plugin gefunden und es verändert.

Da ich ein absoluter Scriptingnuub bin schaut mal ob es gehen könnte:



#include <core>
#include <console>
#include <string>
#include <admin>
#include <adminlib>

#define ACCESS_CONSOLE 131072

new STRING_VERSION[MAX_DATA_LENGTH] = "Beta 1.0";

#define MinutesRed 255
#define MinutesGreen 0
#define MinutesBlue 0
#define SecondsRed 255
#define SecondsGreen 255
#define SecondsBlue 255

new GameCommencing=0;
new checktime;
new origtimelimit;
new timer;
new Map[MAX_NAME_LENGTH];

/*--- Für mapvoting des plugins vote_for_it ---*/
new votetimer;
new voteallowed;

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);
}
voteallowed=0;
set_timer("check_vote",20,0);
}
return PLUGIN_CONTINUE;
}
public warn(Timer,Repeat,HLUser,HLParam)
{
new a;
new time;
new Msg[MAX_TEXT_LENGTH];


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 bis zum Mapchange!",12,MinutesRed,MinutesGreen,MinutesBlue);
a = 300;
}
case 1500:{
execclient_all("speak ^"fvox/twenty five minutes remaining^"");
centersay("25 Minuten bis zum Mapchange!",12,MinutesRed,MinutesGreen,MinutesBlue);
a = 300;
}
case 1200:{
execclient_all("speak ^"fvox/twenty minutes remaining^"");
centersay("20 Minuten bis zum Mapchange!",12,MinutesRed,MinutesGreen,MinutesBlue);
a = 300;
}
case 900:{
execclient_all("speak ^"fvox/fifteen minutes remaining^"");
centersay("15 Minuten bis zum Mapchange!",12,MinutesRed,MinutesGreen,MinutesBlue);
a = 300;
}
case 600:{
execclient_all("speak ^"fvox/ten minutes remaining^"");
centersay("10 Minuten bis zum Mapchange!",12,MinutesRed,MinutesGreen,MinutesBlue);
a = 300;
}
case 300:{
execclient_all("speak ^"fvox/five minutes remaining^"");
centersay("5 Minuten bis zum Mapchange!",12,MinutesRed,MinutesGreen,MinutesBlue);
a = 180;
}
case 120:{
execclient_all("speak ^"fvox/two minutes remaining^"");
centersay("2 Minuten bis zum Mapchange!",12,MinutesRed,MinutesGreen,MinutesBlue);
a = 60;
}
case 60:{
execclient_all("speak ^"fvox/sixty seconds remaining^"");
centersay("60 Sekunden bis zum Mapchange!",12,SecondsRed,SecondsGreen,SecondsBlue);
votetimer=set_timer("do_vote",1,99999);
a = 30;
}
case 30:{
execclient_all("speak ^"fvox/thirty seconds remaining^"");
centersay("30 Sekunden bis zum Mapchange!",12,SecondsRed,SecondsGreen,SecondsBlue);
a = 20;
}
case 10:{
execclient_all("speak ^"fvox/ten^"");
centersay("TEN!",12,SecondsRed,SecondsGreen,SecondsBlue);
a = 1;
}
case 9:{
execclient_all("speak ^"fvox/nine^"");
centersay("NINE!",12,SecondsRed,SecondsGreen,SecondsBlue);
a = 1;
}
case 8:{
execclient_all("speak ^"fvox/eight^"");
centersay("EIGHT!",12,SecondsRed,SecondsGreen,SecondsBlue);
a = 1;
}
case 7:{
execclient_all("speak ^"fvox/seven^"");
centersay("SEVEN!",12,SecondsRed,SecondsGreen,SecondsBlue);
a = 1;
}
case 6:{
execclient_all("speak ^"fvox/six^"");
centersay("SIX!",12,SecondsRed,SecondsGreen,SecondsBlue);
a = 1;
nextmap( Map, MAX_NAME_LENGTH );
}
case 5:{
execclient_all("speak ^"fvox/five^"");
snprintf(Msg,MAX_TEXT_LENGTH,"FIVE! ^nNext Map:%s",Map);
centersay(Msg,12,SecondsRed,SecondsGreen,SecondsBlue);
a = 1;
}
case 4:{
execclient_all("speak ^"fvox/four^"");
snprintf(Msg,MAX_TEXT_LENGTH,"FOUR! ^nNext Map:%s",Map);
centersay(Msg,12,SecondsRed,SecondsGreen,SecondsBlue);
a = 1;
}
case 3:{
execclient_all("speak ^"fvox/three^"");
snprintf(Msg,MAX_TEXT_LENGTH,"THREE! ^nNext Map:%s",Map);
centersay(Msg,12,SecondsRed,SecondsGreen,SecondsBlue);
a = 1;
}
case 2:{
execclient_all("speak ^"fvox/two^"");
snprintf(Msg,MAX_TEXT_LENGTH,"TWO! ^nNext Map:%s",Map);
centersay(Msg,12,SecondsRed,SecondsGreen,SecondsBlue);
a = 1;
}
case 1:{
execclient_all("speak ^"fvox/one^"");
snprintf(Msg,MAX_TEXT_LENGTH,"ONE! ^nNext Map:%s",Map);
centersay(Msg,12,SecondsRed,SecondsGreen,SecondsBlue);
a = 1;
}
case 0:{
execclient_all("speak ^"have a nice day^"");
snprintf(Msg,MAX_TEXT_LENGTH,"Game Over!^nChanging Map to:%s",Map);
centersay(Msg,12,SecondsRed,SecondsGreen,SecondsBlue);
say(Msg);
}
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;
}
}
}
execclient_all("timeleft");/*Debug-Funktion, um zu sehen, ob das Announcing stimmt*/
/*
new Msg[MAX_TEXT_LENGTH];
snprintf(Msg,MAX_TEXT_LENGTH,"Naechste Timer in %i Sekunden",a);
say(Msg);
*/
timer=set_timer("warn",a, 0);
return PLUGIN_CONTINUE;
}
public check_vote(Timer,Repeat,HLUser,HLParam)
{
voteallowed=1;
return PLUGIN_CONTINUE;
}

public do_vote(Timer,Repeat,HLUser,HLParam)
{
if (voteallowed==1){
kill_timer(votetimer);
if(getvar("admin_vote_autostart")==1){
plugin_exec("admin_vote_multimap","");
}
}
return PLUGIN_CONTINUE;
}


public plugin_init(){
plugin_registerinfo("Ein Timeremember auf LogD-Basis","",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;
}

Greets

metaxa


P.s. Dieses Script basiert natürlich auf Sir Drink a Lots geändertem Timerem2

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