AdminMod.de https://www.adminmod.de/ |
|
Logd Player remaining https://www.adminmod.de/viewtopic.php?t=2376 |
Seite 1 von 1 |
Autor: | CC [ 07.04.2002, 14:03 ] |
Betreff des Beitrags: | Logd Player remaining |
Hi habe zuletzt auf nem Server ein Plugin gesehen, dass nach jedem Kill noch die verbleibenden CTs bzws Ts angab. ICh fand das recht praktisch. Ich denke mal das ist nen Logd Plugin habe aber keine Ahnung wie es heisst. Vielleicht kann mir ja wer helfen. Thx schonmal CC |
Autor: | [COLA]*Whiskey [ 07.04.2002, 14:15 ] |
Betreff des Beitrags: | |
jo das is das plugin_logd_enemycount benutz mal die Suchfunktion dann findest du es http://board.battlenation.de/search.php |
Autor: | CC [ 07.04.2002, 14:40 ] |
Betreff des Beitrags: | |
entweder bin ich zu dumm für die Suche oder es gibt keinen entsprechenden Beitrag |
Autor: | CC [ 07.04.2002, 14:42 ] |
Betreff des Beitrags: | |
noch ne kleine Anmerkung: das suchen dauert bei mir gerade mal 2 secs. Das ist meiner Meinung nach ein bissel wenig um alle Posts durchzu gehen. |
Autor: | florian [ 07.04.2002, 15:06 ] |
Betreff des Beitrags: | |
ja bei mir findet es auch nix so ne schei... |
Autor: | Biohazard1 [ 08.04.2002, 02:20 ] |
Betreff des Beitrags: | |
Da muß ich CC aber in Schutz nehmen, meine Suche nach dem Plugin hier im Forum blieb auch erfolglos. Da ich es programmiert und hier gepostet habe sollte ich wohl am besten wissen wie der Topic hieß, undzwar habe ich ihm den Namen new PLUGIN_LOGD_ENEMYCOUNT gegeben. Kurze Zeit nach meinem Versuch den Thread zu finden sollte ich auch erfahren warum man ihn nicht per Suchfunktion finden kann: Was nicht vorhanden ist, kann auch nicht gefunden werden. Ich denke die Admins haben die 'alten' Topics aus Gründen der Speicherverwaltung schlicht und ergreifend gelöscht. Schade eigentlich, denn ich hätte dir gerne den Link zu besagtem Topic gepostet, damit du mehr über das Plugin nachlesen kannst. Nagut, solltest du noch immer an dem Plugin interessiert sein, hier nochmal der Text den ich damals gepostet hatte (hatte ihn glücklicherweise in einer TXT gespeichert) Zitat: Nabend zusammen,
ich habe gerade mein neues Plugin fertig gestellt und möchte es hier nun kurz vorstellen. Dieses Plugin zeigt und/oder sagt die verbleibenden Gegner in der aktuellen Runde an. Mit folgenden Befehlen kann man das Plugin seinen Wünschen entsprechend anpassen: admin_ec_on - Schaltet den Enemy Counter ein admin_ec_off - Schaltet den Enemy Counter aus admin_ec_range <value> - Legt fest in welchem Bereich der Enemy Counter arbeitet (z.B.: 10 - es werden die letzten 10 Kills angezeigt bzw. angesagt - value muß zwischen 1 und 100 liegen) admin_ec_style <value> - Stellt den Stil der optischen Anzeige ein: 1 - Centersay message, 2 - Typesay, 3 - Chat, 0 - deaktiviert (value muß zwischen 0 und 3 liegen) admin_ecaudio_on - Schaltet die HL-Soundausgabe ein admin_ecaudio_off - Schaltet die Hl-Soundausgabe aus Ich hoffe ihr testet es ausgiebig und schreibt mir eure Erfahrungen oder Bugs. Hier nun der Code: Code: /**************************************************************** ** Biohazards Enemy Counter v 1.0 ****** *** ***** **** INFO: Tells you how many enemies are left in current **** ***** round. It acts on Kills, Teamkills, Disconnection and *** ****** Suicide. Also works with PodBot 2.5 ** ****************************************************************/ #include <core> #include <console> #include <string> #include <admin> #include <adminlib> #define ACCESS_CONSOLE 131072 #define ACCESS_EC 512 #define SHOW_TIME 2 #define COLOR_R 255 #define COLOR_G 255 #define COLOR_B 255 new STRING_VERSION[MAX_DATA_LENGTH] = "1.0"; new ADDON_WORDS[] = "man left"; new bEnemyCounter = 1; // 1 - Enemy Counter on, 2 - Enemy Counter off new bAudio = 1; // 1 - HL Speech on, 0 - HL Speech off new Style = 1; // 1 - Centersay, 2 - Typesay, 3 - Chat, 0 - disable new Range = 10; // Sets the range in which Enemy Counter will act. Value has to be greater then 0 ! public admin_ec_off(HLCommand, HLData, HLUserName, UserIndex) { new User[MAX_NAME_LENGTH]; new Text[MAX_TEXT_LENGTH]; convert_string(HLUserName, User, MAX_NAME_LENGTH); if (bEnemyCounter != 0) { bEnemyCounter = 0; // Enemy Counter off say(">>> Enemy Counter has been disabled <<<"); snprintf(Text, MAX_TEXT_LENGTH, "Enemy Counter has been disabled by %s", User); log(Text); } else selfmessage("Enemy Counter already disabled"); return PLUGIN_HANDLED; } public admin_ec_on(HLCommand, HLData, HLUserName, UserIndex) { new User[MAX_NAME_LENGTH]; new Text[MAX_TEXT_LENGTH]; convert_string(HLUserName, User, MAX_NAME_LENGTH); if (bEnemyCounter != 1) { bEnemyCounter = 1; // Enemy Counter on say(">>> Enemy Counter has been enabled <<<"); snprintf(Text, MAX_TEXT_LENGTH, "Enemy Counter has been enabled by %s", User); log(Text); } else selfmessage("Enemy Counter already enabled"); return PLUGIN_HANDLED; } public admin_ecaudio_off(HLCommand, HLData, HLUserName, UserIndex) { bAudio = 0; // HL-Speech off selfmessage(">>> Enemy Counter: HL-Speech off"); // log("HL-Speech off"); return PLUGIN_HANDLED; } public admin_ecaudio_on(HLCommand, HLData, HLUserName, UserIndex) { bAudio = 1; // HL-Speech on selfmessage(">>> Enemy Counter: HL-Speech on"); // log("HL-Speech on"); return PLUGIN_HANDLED; } public admin_ec_style(HLCommand,HLData,HLUserName,UserIndex) { new Command[MAX_COMMAND_LENGTH]; new Data[MAX_DATA_LENGTH]; new User[MAX_NAME_LENGTH]; new Value; convert_string(HLCommand,Command,MAX_COMMAND_LENGTH); convert_string(HLData,Data,MAX_DATA_LENGTH); convert_string(HLUserName,User,MAX_NAME_LENGTH); Value = strtonum(Data); if (Value == 1) { Style = 1 // Centersy selfmessage(">> Style changed to 'Centersay'"); } if (Value == 2) { Style = 2 // Typesay selfmessage(">> Style changed to 'Typesay'"); } if (Value == 3) { Style = 3 // Chat selfmessage(">> Style changed to 'Chat'"); } if (Value == 0) { Style = 0 // disabled selfmessage(">> Style changed to 'disabled'"); } if ((Value != 1) && (Value != 2) && (Value != 3) && (Value != 0)) selfmessage("Value has to be a number between 0 and 3 !"); return PLUGIN_HANDLED; } public admin_ec_range(HLCommand,HLData,HLUserName,UserIndex) { new Command[MAX_COMMAND_LENGTH]; new Data[MAX_DATA_LENGTH]; new User[MAX_NAME_LENGTH]; new Value; new Text[MAX_TEXT_LENGTH]; convert_string(HLCommand,Command,MAX_COMMAND_LENGTH); convert_string(HLData,Data,MAX_DATA_LENGTH); convert_string(HLUserName,User,MAX_NAME_LENGTH); Value = strtonum(Data); if (Value < 1) { selfmessage("Value has to be a number above 0 !"); } if (Value > 100) { selfmessage("You silly bear, tell me a server which can handle more than 100 players !"); } if ((Value > 0) && (Value <= 100)) { Range = Value; snprintf(Text, MAX_TEXT_LENGTH, ">>> Range set to %i",Value); selfmessage(Text); } return PLUGIN_HANDLED; } public logd_enemycount (HLCommand,HLData,HLUserName,UserIndex) { if (!bEnemyCounter) return PLUGIN_CONTINUE; new iIDK; new iIDV; new sID1[3]; new sID2[3]; new iTeamK; new iTeamV; new iUserID; new iWONID; new Data[MAX_DATA_LENGTH]; new Victim[MAX_NAME_LENGTH]; new Killer[MAX_NAME_LENGTH]; new Target[MAX_NAME_LENGTH]; new SessionID; new WONID; new Team; new Dead; new Anzahl_T = 0; new Anzahl_CT = 0; new i; new maxplayers = maxplayercount(); convert_string( HLData, Data, MAX_DATA_LENGTH ); strsplit( Data, " ", sID1, 3, sID2, 3 ); iIDK = strtonum( sID1 ); iIDV = strtonum( sID2 ); if(playerinfo(iIDK, Killer, MAX_NAME_LENGTH, iUserID, iWONID, iTeamK)) { if(playerinfo(iIDV, Victim, MAX_NAME_LENGTH, iUserID, iWONID, iTeamV)) { for(i=1; i<=maxplayers; i++) { strinit(Target); if (playerinfo(i,Target,MAX_NAME_LENGTH,SessionID,WONID,Team,Dead)) { if ((Dead == 0) && (Team == 1)) { Anzahl_T ++; } if ((Dead == 0) && (Team == 2)) { Anzahl_CT ++; } } } ec_status(iTeamV, Anzahl_T, Anzahl_CT); } } return PLUGIN_CONTINUE; } public ec_onsuicide (sName, sUID, sWonid, sTeam, sWeapon) { new Target[MAX_NAME_LENGTH]; new SessionID; new WONID; new Team; new Dead; new Anzahl_T = 0; new Anzahl_CT = 0; new i; new maxplayers = maxplayercount(); for(i=1; i<=maxplayers; i++) { strinit(Target); if (playerinfo(i,Target,MAX_NAME_LENGTH,SessionID,WONID,Team,Dead)) { if ((Dead == 0) && (Team == 1)) { Anzahl_T ++; } if ((Dead == 0) && (Team == 2)) { Anzahl_CT ++; } } } ec_status(sTeam, Anzahl_T, Anzahl_CT); } public ec_ondisconnect (dName, dUID, dWonid, dTeam) { new Target[MAX_NAME_LENGTH]; new SessionID; new WONID; new Team; new Dead; new Anzahl_T = 0; new Anzahl_CT = 0; new i; new maxplayers = maxplayercount(); for(i=1; i<=maxplayers; i++) { strinit(Target); if (playerinfo(i,Target,MAX_NAME_LENGTH,SessionID,WONID,Team,Dead)) { if ((Dead == 0) && (Team == 1)) { Anzahl_T ++; } if ((Dead == 0) && (Team == 2)) { Anzahl_CT ++; } } } ec_status(dTeam, Anzahl_T, Anzahl_CT); } public ec_status(GroupV, Anz_T, Anz_CT) { if ((Anz_T > Range) && (Anz_CT > Range)) return PLUGIN_CONTINUE; // if ((Anz_CT == 0) || (Anz_T == 0)) // return PLUGIN_CONTINUE; new TextMessage[MAX_TEXT_LENGTH]; new ChatMessage[MAX_TEXT_LENGTH]; new SessionID; new WONID; new Team; new Target[MAX_NAME_LENGTH]; new AudioMessage[MAX_DATA_LENGTH]; new maxplayers = maxplayercount(); new i; snprintf(TextMessage, MAX_TEXT_LENGTH, "%i Counter left^n%i Terror left", Anz_CT, Anz_T); if (Style == 1) centersay(TextMessage, SHOW_TIME, COLOR_R, COLOR_G, COLOR_B); if (Style == 2) typesay(TextMessage, SHOW_TIME, COLOR_R, COLOR_G, COLOR_B); if (Style == 3) { snprintf(ChatMessage, MAX_TEXT_LENGTH, "# %i Counter left - %i Terror left #", Anz_CT, Anz_T); say(ChatMessage); } if (GroupV == 1) { if (Anz_T == 11) strcpy(AudioMessage, "speak ^"eleven ", MAX_DATA_LENGTH); if (Anz_T == 10) strcpy(AudioMessage, "speak ^"ten ", MAX_DATA_LENGTH); if (Anz_T == 9) strcpy(AudioMessage, "speak ^"nine ", MAX_DATA_LENGTH); if (Anz_T == 8) strcpy(AudioMessage, "speak ^"eight ", MAX_DATA_LENGTH); if (Anz_T == 7) strcpy(AudioMessage, "speak ^"seven ", MAX_DATA_LENGTH); if (Anz_T == 6) strcpy(AudioMessage, "speak ^"six ", MAX_DATA_LENGTH); if (Anz_T == 5) strcpy(AudioMessage, "speak ^"five ", MAX_DATA_LENGTH); if (Anz_T == 4) strcpy(AudioMessage, "speak ^"four ", MAX_DATA_LENGTH); if (Anz_T == 3) strcpy(AudioMessage, "speak ^"three ", MAX_DATA_LENGTH); if (Anz_T == 2) strcpy(AudioMessage, "speak ^"two ", MAX_DATA_LENGTH); if (Anz_T == 1) strcpy(AudioMessage, "speak ^"one ", MAX_DATA_LENGTH); strcat(AudioMessage, ADDON_WORDS, MAX_DATA_LENGTH); strcat(AudioMessage, "^"", MAX_DATA_LENGTH); } if (GroupV == 2) { if (Anz_CT == 11) strcpy(AudioMessage, "speak ^"eleven ", MAX_DATA_LENGTH); if (Anz_CT == 10) strcpy(AudioMessage, "speak ^"ten ", MAX_DATA_LENGTH); if (Anz_CT == 9) strcpy(AudioMessage, "speak ^"nine ", MAX_DATA_LENGTH); if (Anz_CT == 8) strcpy(AudioMessage, "speak ^"eight ", MAX_DATA_LENGTH); if (Anz_CT == 7) strcpy(AudioMessage, "speak ^"seven ", MAX_DATA_LENGTH); if (Anz_CT == 6) strcpy(AudioMessage, "speak ^"six ", MAX_DATA_LENGTH); if (Anz_CT == 5) strcpy(AudioMessage, "speak ^"five ", MAX_DATA_LENGTH); if (Anz_CT == 4) strcpy(AudioMessage, "speak ^"four ", MAX_DATA_LENGTH); if (Anz_CT == 3) strcpy(AudioMessage, "speak ^"three ", MAX_DATA_LENGTH); if (Anz_CT == 2) strcpy(AudioMessage, "speak ^"two ", MAX_DATA_LENGTH); if (Anz_CT == 1) strcpy(AudioMessage, "speak ^"one ", MAX_DATA_LENGTH); strcat(AudioMessage, ADDON_WORDS, MAX_DATA_LENGTH); strcat(AudioMessage, "^"", MAX_DATA_LENGTH); } if (bAudio == 1) { for(i=1; i<=maxplayers; i++) { strinit(Target); if (playerinfo(i,Target,MAX_NAME_LENGTH,SessionID,WONID,Team) && (WONID != 0)) { if (Team != GroupV) { execclient(Target,AudioMessage); } } } } return PLUGIN_CONTINUE; } public plugin_init() { plugin_registerinfo("Biohazards Enemy Counter ","Tells you how many enemies are left.",STRING_VERSION); plugin_registercmd("logd_enemycount", "logd_enemycount", ACCESS_CONSOLE); plugin_registercmd("ec_ondisconnect", "ec_ondisconnect", ACCESS_CONSOLE); plugin_registercmd("ec_onsuicide", "ec_onsuicide", ACCESS_CONSOLE); plugin_registercmd("admin_ec_off", "admin_ec_off", ACCESS_EC, "admin_ec_off: Turns off enemy counting."); plugin_registercmd("admin_ec_on", "admin_ec_on", ACCESS_EC, "admin_ec_on: Turns on enemy counting."); plugin_registercmd("admin_ecaudio_off", "admin_ecaudio_off", ACCESS_EC, "admin_ecaudio_off: Turns off HL-Speech."); plugin_registercmd("admin_ecaudio_on", "admin_ecaudio_on", ACCESS_EC, "admin_ecaudio_on: Turns on HL-Speech."); plugin_registercmd("admin_ec_style", "admin_ec_style", ACCESS_EC, "admin_ec_style: Sets the style of messages."); plugin_registercmd("admin_ec_range", "admin_ec_range", ACCESS_EC, "admin_ec_range: Sets the range in which Enemy Counter will act."); exec( "logd_reg 57 admin_command logd_enemycount" ); exec( "logd_reg 52 admin_command ec_ondisconnect" ); exec( "logd_reg 53 admin_command ec_onsuicide" ); return PLUGIN_CONTINUE; }Bei Rückfragen stehe ich gerne zur Verfügung. Viel Spass damit... Bio |
Autor: | CC [ 08.04.2002, 06:40 ] |
Betreff des Beitrags: | |
Juhu.... THX werde es nachher mal testen. |
Autor: | Sir Drink a lot [ 08.04.2002, 10:31 ] |
Betreff des Beitrags: | |
Sorry, dass der Beitrag von Früher verschüttet gegangen ist. Aber es musste leider wirklich mal aufgeräumt werden und da ist dieser wohl mit untergegangen.. Aber er ist ja wieder da Cu, SDal |
Autor: | Snowman23 [ 09.04.2002, 07:06 ] |
Betreff des Beitrags: | Fehler beim kompilieren... |
Hi Biohazard Hab gerade Dein Plugin versucht zu kompilieren, aber ich bekomme folgende Fehlermeldung: plugin_logd_enemycount.sma(156) Warning [217]: loose indentation plugin_logd_enemycount.sma(157) Warning [217]: loose indentation plugin_logd_enemycount.sma(192) Warning [217]: loose indentation Hab es mit AM 2.50.09 und mit 2.50.26 versucht - gleiches Ergebnis. Sind diese Fehler schwerwiegend oder kann ich sie ignorieren ??? Wenn ich es richtig übersetze, fehlt bei 3 Zeilen das einrücken ??? Greetz Snowman |
Autor: | Sir Drink a lot [ 09.04.2002, 10:15 ] |
Betreff des Beitrags: | |
richtig übersetzt. Du kannst diese Warnungen ignorieren. Oder Du rückst diese Zeilen etwas ein (oder aus ), so dass es hinkommt. |
Autor: | sentinel [ 28.04.2002, 12:57 ] |
Betreff des Beitrags: | hab ein anderes prob |
bei mir funzt es nich kommt in der logdatei immer [ADMIN] ERROR: LoadPlugin on plugin 'C:\Sierra\Counter-Strike\cstrike\dlls\PLUGIN_LOGD_ENEMYCOUNT' failed. Plugin not loaded. kannst du helfen bitte |
Autor: | CC [ 28.04.2002, 13:17 ] |
Betreff des Beitrags: | |
scheinbar hast du etwas in der plugin.ini falsch geschrieben oder das Plugin nicht in das angegebene Verzeichnis kopiert. du musst auch das .amx dahinter schreiben |
Autor: | Biohazard1 [ 28.04.2002, 14:18 ] |
Betreff des Beitrags: | Re: hab ein anderes prob |
Zitat: bei mir funzt es nich kommt in der logdatei immer
Wie CC schon gesagt hat könnte es mit deiner plugin.ini zusammen hängen. Poste sie am besten mal hier und auch die Versionsdaten deiner Software (AdminMod, Metamod, ...).[ADMIN] ERROR: LoadPlugin on plugin 'C:\Sierra\Counter-Strike\cstrike\dlls\PLUGIN_LOGD_ENEMYCOUNT' failed. Plugin not loaded. ... Bio |
Autor: | florian [ 28.04.2002, 15:17 ] |
Betreff des Beitrags: | |
Ja und was ist mit der redemption? |
Autor: | sentinel [ 01.05.2002, 04:27 ] |
Betreff des Beitrags: | |
Ich danke euch sehr es lag an der plugin.ini ich habe da dummerweise .ax geschrieben hätte ich auch selber drauf kommen können |
Seite 1 von 1 | Alle Zeiten sind UTC+01:00 |
Powered by phpBB® Forum Software © phpBB Limited https://www.phpbb.com/ |