Hi habe ein problem ! und zwar höre ich die .wav theone und force aber meine mitspieler nicht, obwohl ich in der .res datei die 2 zum download stehen hab.
Ich hoffe ihr könnt mir Helfen !!!!!
Hier meine plugin_logd_lastscout.sma
/******************************************************************
** Biohazards Last Scout Plugin v 2.0 ********
*** (plugin_logd_lastscout.sma) *******
**** INFO: Wishs good luck to the last man of a team in ******
***** the current round. It acts on Kills, Teamkills, Dis- *****
****** connection and Suicide. Also works with PodBot 2.5 ****
******* ***
******** Thanks to f[SAM]t for this fine idea **
******************************************************************/
#include <core>
#include <console>
#include <string>
#include <admin>
#include <adminlib>
#define ACCESS_CONSOLE 131072
#define ACCESS_LS 1024
#define SHOW_TIME 5
new STRING_VERSION[MAX_DATA_LENGTH] = "2.0";
new bLastScout = 1; // 1 - LastScout on, 2 - LastScout off
new bAudio = 1; // 1 - Sound on, 0 - Sound off
new Style = 1; // 1 - Centersay, 2 - Typesay, 0 - disabled
new bMode = 0; // Holds information if last man was allready detected
new bWar = 0; // 1 - Plugin zwecks Clanwar abschalten
public admin_war(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) {
if (bWar != 1) {
bWar = 1;
selfmessage("Last Scout Plugin deactivated. Reactivate with 'admin_war 0'");
}
else selfmessage("Last Scout Plugin already deactivated");
}
if (Value == 0) {
if (bWar != 0) {
bWar = 0;
selfmessage("Last Scout Plugin reactivated");
}
else selfmessage("Last Scout Plugin already reactivated");
}
if ((Value != 0) && (Value != 1))
selfmessage("Value has to be 0 or 1 !");
return PLUGIN_HANDLED;
}
public admin_ls_off(HLCommand, HLData, HLUserName, UserIndex)
{
new User[MAX_NAME_LENGTH];
new Text[MAX_TEXT_LENGTH];
convert_string(HLUserName, User, MAX_NAME_LENGTH);
if (bLastScout != 0) {
bLastScout = 0; // Last Scout off
say(">>> Last Scout Plugin has been disabled <<<");
snprintf(Text, MAX_TEXT_LENGTH, "Last Scout Plugin has been disabled by %s", User);
log(Text);
}
else selfmessage("Last Scout Plugin already disabled");
return PLUGIN_HANDLED;
}
public admin_ls_on(HLCommand, HLData, HLUserName, UserIndex)
{
new User[MAX_NAME_LENGTH];
new Text[MAX_TEXT_LENGTH];
convert_string(HLUserName, User, MAX_NAME_LENGTH);
if (bLastScout != 1) {
bLastScout = 1; // Last Scout on
say(">>> Last Scout Plugin has been enabled <<<");
snprintf(Text, MAX_TEXT_LENGTH, "Last Scout Plugin has been enabled by %s", User);
log(Text);
}
else selfmessage("Last Scout Plugin already enabled");
return PLUGIN_HANDLED;
}
public admin_lsaudio_off(HLCommand, HLData, HLUserName, UserIndex)
{
new User[MAX_NAME_LENGTH];
convert_string(HLUserName, User, MAX_NAME_LENGTH);
if (bAudio != 0) {
bAudio = 0; // HL-Speech off
selfmessage(">>> Sound has been disabled");
}
else selfmessage("Sound is already disabled");
return PLUGIN_HANDLED;
}
public admin_lsaudio_on(HLCommand, HLData, HLUserName, UserIndex)
{
new User[MAX_NAME_LENGTH];
convert_string(HLUserName, User, MAX_NAME_LENGTH);
if (bAudio != 1) {
bAudio = 1; // HL-Speech on
selfmessage(">>> Sound has been enabled");
}
else selfmessage("Sound is already enabled");
return PLUGIN_HANDLED;
}
public admin_ls_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 == 0) {
Style = 0; // disabled
selfmessage(">> Style changed to 'disabled'");
}
if ((Value != 1) && (Value != 2) && (Value != 0))
selfmessage("Value has to be a number between 0 and 2 !");
return PLUGIN_HANDLED;
}
public ls_onStartOrEnd(HLCommand,HLData,HLUserName,UserIndex)
{
if (!bLastScout)
return PLUGIN_CONTINUE;
if (bWar == 1)
return PLUGIN_CONTINUE;
new Params[MAX_DATA_LENGTH];
convert_string(HLData,Params,MAX_DATA_LENGTH);
switch( Params[6] )
{
case 'S':
{
bMode = 0;
return PLUGIN_CONTINUE;
}
}
return PLUGIN_CONTINUE;
}
public logd_lastscout (HLCommand,HLData,HLUserName,UserIndex)
{
if (!bLastScout)
return PLUGIN_CONTINUE;
if (bWar == 1)
return PLUGIN_CONTINUE;
new Target[MAX_NAME_LENGTH];
new LastMan_T[MAX_NAME_LENGTH];
new LastMan_CT[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 ++;
LastMan_T = Target;
}
if ((Dead == 0) && (Team == 2)) {
Anzahl_CT ++;
LastMan_CT = Target;
}
}
}
if (bMode == 0) {
if ((Anzahl_T == 1) && (Anzahl_CT > 1)) {
ls_ShowHim(1, LastMan_T, "");
bMode = 1;
}
if ((Anzahl_CT == 1) && (Anzahl_T > 1)) {
ls_ShowHim(2, LastMan_CT, "");
bMode = 1;
}
}
if ((Anzahl_CT == 1) && (Anzahl_T == 1)) {
ls_ShowHim(0, LastMan_T, LastMan_CT);
}
if ((Anzahl_CT == 1) && (Anzahl_T == 0)) {
if (bAudio == 1) {
for(i=1; i<=maxplayers; i++) {
strinit(Target);
if (playerinfo(i, Target, MAX_NAME_LENGTH, SessionID, WONID)) {
if ((strcmp(Target, LastMan_CT) == 0) && (WONID != 0)) {
playsound(LastMan_CT, "misc/theone.wav");
}
}
}
}
}
if ((Anzahl_CT == 0) && (Anzahl_T == 1)) {
if (bAudio == 1) {
for(i=1; i<=maxplayers; i++) {
strinit(Target);
if (playerinfo(i, Target, MAX_NAME_LENGTH, SessionID, WONID)) {
if ((strcmp(Target, LastMan_T) == 0) && (WONID != 0)) {
playsound(LastMan_T, "misc/theone.wav");
}
}
}
}
}
return PLUGIN_CONTINUE;
}
public ls_onDisconnect (dName, dUID, dWonid, sTeam)
{
if (!bLastScout)
return PLUGIN_CONTINUE;
if (bWar == 1)
return PLUGIN_CONTINUE;
new Target[MAX_NAME_LENGTH];
new LastMan_T[MAX_NAME_LENGTH];
new LastMan_CT[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 ++;
LastMan_T = Target;
}
if ((Dead == 0) && (Team == 2)) {
Anzahl_CT ++;
LastMan_CT = Target;
}
}
}
if (bMode == 0) {
if ((Anzahl_T == 1) && (Anzahl_CT > 1)) {
ls_ShowHim(1, LastMan_T, "");
bMode = 1;
}
if ((Anzahl_CT == 1) && (Anzahl_T > 1)) {
ls_ShowHim(2, LastMan_CT, "");
bMode = 1;
}
}
if ((Anzahl_CT == 1) && (Anzahl_T == 1)) {
ls_ShowHim(0, LastMan_T, LastMan_CT);
}
if ((Anzahl_CT == 1) && (Anzahl_T == 0)) {
if (bAudio == 1) {
for(i=1; i<=maxplayers; i++) {
strinit(Target);
if (playerinfo(i, Target, MAX_NAME_LENGTH, SessionID, WONID)) {
if ((strcmp(Target, LastMan_CT) == 0) && (WONID != 0)) {
playsound(LastMan_CT, "misc/theone.wav");
}
}
}
}
}
if ((Anzahl_CT == 0) && (Anzahl_T == 1)) {
if (bAudio == 1) {
for(i=1; i<=maxplayers; i++) {
strinit(Target);
if (playerinfo(i, Target, MAX_NAME_LENGTH, SessionID, WONID)) {
if ((strcmp(Target, LastMan_T) == 0) && (WONID != 0)) {
playsound(LastMan_T, "misc/theone.wav");
}
}
}
}
}
return PLUGIN_CONTINUE;
}
public ls_onSuicide (sName, sUID, sWonid, sTeam, sWeapon)
{
if (!bLastScout)
return PLUGIN_CONTINUE;
if (bWar == 1)
return PLUGIN_CONTINUE;
new Target[MAX_NAME_LENGTH];
new LastMan_T[MAX_NAME_LENGTH];
new LastMan_CT[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 ++;
LastMan_T = Target;
}
if ((Dead == 0) && (Team == 2)) {
Anzahl_CT ++;
LastMan_CT = Target;
}
}
}
if (bMode == 0) {
if ((Anzahl_T == 1) && (Anzahl_CT > 1)) {
ls_ShowHim(1, LastMan_T, "");
bMode = 1;
}
if ((Anzahl_CT == 1) && (Anzahl_T > 1)) {
ls_ShowHim(2, LastMan_CT, "");
bMode = 1;
}
}
if ((Anzahl_CT == 1) && (Anzahl_T == 1)) {
ls_ShowHim(0, LastMan_T, LastMan_CT);
}
if ((Anzahl_CT == 1) && (Anzahl_T == 0)) {
if (bAudio == 1) {
for(i=1; i<=maxplayers; i++) {
strinit(Target);
if (playerinfo(i, Target, MAX_NAME_LENGTH, SessionID, WONID)) {
if ((strcmp(Target, LastMan_CT) == 0) && (WONID != 0)) {
playsound(LastMan_CT, "misc/theone.wav");
}
}
}
}
}
if ((Anzahl_CT == 0) && (Anzahl_T == 1)) {
if (bAudio == 1) {
for(i=1; i<=maxplayers; i++) {
strinit(Target);
if (playerinfo(i, Target, MAX_NAME_LENGTH, SessionID, WONID)) {
if ((strcmp(Target, LastMan_T) == 0) && (WONID != 0)) {
playsound(LastMan_T, "misc/theone.wav");
}
}
}
}
}
return PLUGIN_CONTINUE;
}
public ls_ShowHim (Team, LastMan[MAX_NAME_LENGTH], LastMan2[MAX_NAME_LENGTH])
{
new TextMessage[MAX_TEXT_LENGTH];
new Digit = random(2);
new Name[MAX_NAME_LENGTH];
new iUserID;
new iWONID;
new maxplayers = maxplayercount();
new i;
if (Team != 0) {
if (Digit == 0)
snprintf(TextMessage, MAX_TEXT_LENGTH, "%s: I hope you still have a healthpack", LastMan);
if (Digit == 1)
snprintf(TextMessage, MAX_TEXT_LENGTH, "%s: All your teammates were killed. Good luck !", LastMan);
if (Digit == 2)
snprintf(TextMessage, MAX_TEXT_LENGTH, "%s: Now you are alone. Have fun !", LastMan);
}
if (Team == 0) {
snprintf(TextMessage, MAX_TEXT_LENGTH, "%s vs %s", LastMan, LastMan2);
if (Style == 1) centersay(TextMessage, SHOW_TIME, 0, 255, 0);
if (Style == 2) typesay(TextMessage, SHOW_TIME, 0, 255, 0);
}
if (Team == 1) {
if (Style == 1) centersay(TextMessage, SHOW_TIME, 255, 0, 0);
if (Style == 2) typesay(TextMessage, SHOW_TIME, 255, 0, 0);
}
if (Team == 2) {
if (Style == 1) centersay(TextMessage, SHOW_TIME, 0, 0, 255);
if (Style == 2) typesay(TextMessage, SHOW_TIME, 0, 0, 255);
}
if (bAudio == 1) {
for(i=1; i<=maxplayers; i++) {
strinit(Name);
if (playerinfo(i, Name, MAX_NAME_LENGTH, iUserID, iWONID)) {
if ((strcmp(Name, LastMan) == 0) && (iWONID != 0)) {
playsound(Name, "misc/force.wav");
}
if ((strcmp(Name, LastMan2) == 0) && (iWONID != 0)) {
playsound(Name, "misc/force.wav");
}
}
}
}
}
public plugin_init()
{
plugin_registerinfo("Biohazards Last Scout Plugin ","Wishs good luck to the last man standing.",STRING_VERSION);
plugin_registercmd("logd_lastscout", "logd_lastscout", ACCESS_CONSOLE);
plugin_registercmd("ls_onStartOrEnd", "ls_onStartOrEnd", ACCESS_CONSOLE);
plugin_registercmd("ls_onDisconnect", "ls_onDisconnect", ACCESS_CONSOLE);
plugin_registercmd("ls_onSuicide", "ls_onSuicide", ACCESS_CONSOLE);
plugin_registercmd("admin_ls_off", "admin_ls_off", ACCESS_LS, "admin_ls_off: Turns off enemy counting.");
plugin_registercmd("admin_ls_on", "admin_ls_on", ACCESS_LS, "admin_ls_on: Turns on enemy counting.");
plugin_registercmd("admin_lsaudio_off", "admin_lsaudio_off", ACCESS_LS, "admin_lsaudio_off: Turns off HL-Speech.");
plugin_registercmd("admin_lsaudio_on", "admin_lsaudio_on", ACCESS_LS, "admin_lsaudio_on: Turns on HL-Speech.");
plugin_registercmd("admin_ls_style", "admin_ls_style", ACCESS_LS, "admin_ls_style: Sets the style of messages.");
plugin_registercmd("admin_war", "admin_war", ACCESS_LS, "admin_war: Deactivates Last Scout for Clanmatch.");
exec( "logd_reg 57 admin_command logd_lastscout" );
exec( "logd_reg 62 admin_command ls_onStartOrEnd" );
exec( "logd_reg 52 admin_command ls_onDisconnect" );
exec( "logd_reg 53 admin_command ls_onSuicide" );
return PLUGIN_CONTINUE;
}
Ich hoffe ihr erkennt den fehler
Danke und mfg
wenn ihr mehr details braucht dann sagts
cu