need some help how to fix sound of dota sound?
sound i already have the problem when player kill double they will get error..
right now my player need turn off setting sound.
sound i already have the problem when player kill double they will get error..
right now my player need turn off setting sound.
Code:
//===== eAthena Script =======================================================//= Dota Allstars announcement ( TXT & SQL )//===== By: ==================================================================//= ~AnnieRuru~//===== Current Version: =====================================================//= 1.8//===== Compatible With: =====================================================//= eAthena 12322 Trunk//===== Description: =========================================================//= Dota Announcement script//= with a lot configurations, and anti-sit-killer feature//= [URL="http://www.eathena.ws/board/index.php?s=&showtopic=175136&view=findpost&p=999446//============================================================================-"]http://www.eathena.ws/board/index.php?s=&showtopic=175136&view=findpost&p=999446//============================================================================-[/URL] script DOTAPVP -1,{OnInit:// Configset .sound, 3; // soundeffect : 0 - disable, 1 - play soundeffect to all players on map, 2 - play soundeffect to an area around the killer, 3 - play soundeffect to killer onlyset .ownage, 1; // ownage announcement : 0 - disable, 1 - party owns, 2 - guild ownsset .Announce, 0; // make announce to : 0 - global, 1 - mapset .Announcemap, 1; // announce the map name in the announcement ? : 0 - off, 1 - onset .Announcekill, 1; // announce who pawn who's head : 0 - off, 1- onset .msg_die, 0; // show message who kill you when die : 0 - off, 1- onset .msg_kill, 0; // show message you kill who when killed someone : 0 - off, 1- onset .gmnokill, 0; // GMs are not suppose to kill players. A GM with <this number> level or higher will do nothing. IF set to 60, GM60 and above kill any player will not get anything : 0 - offset .killingspree, 3;set .dominating, 4;set .megakill, 5;set .unstoppable, 6;set .wickedsick, 7;set .monsterkill, 8;set .godlike, 9;set .holyshit, 10;set .continue, 1; // after beyond-godlike, every <this number> kills will make announcement againset .owned, 5; // how many times the party/guild has to kill to announce ownageset .owncontinue, 1; // after ownage, every <this number> party/guild cumulative kills will make ownage announce again// *NEW* anti-sit-killer system// a player must kill another player with this minimum <this number> level to get the announcement and in the ladder.// Otherwise only have streak ended announcement and killed player's streak reset.// Its possible for a level 1 novice to kill a level 55 player and he/she will still get in the ladder// but a level 55 kill a level 1 player will get nothing// 0 - off this system ( default is 55, pk setting )set .lvltokill, 0;// when a player kill another same player <this number> times in a row, the player is warp back to save point.// and the player's streak and ownage count will deduct accordingly// 0 - off this systemset .counttopunish, 6;// minimum level range to kill another player// eg. when set to 20, player level 99 needs to kill another player with minimum level of 79 to get announcement and increase the kill rank.// but a player with base level 50 kills a level 99 will also get the announcement// higher base level cannot kill lower level, but lower level can kill higher level// 0 - off this systemset .minlvlrange, 0;// Config ends ------------------------------------------------------------------------------------------// to prevent bug happenif ( .ownage < 0 || .ownage > 2 ) set .ownage, 0;if ( .Announce < 0 || .Announce > 1 ) set .Announce,0;if ( .continue < 1 ) set .continue, 1;if ( .owncontinue < 1 ) set .owncontinue, 1;if ( .gmnokill <= 0 ) set .gmnokill, 100;if ( .lvltokill <= 1 ) set .lvltokill, 0;if ( .counttopunish <= 1 ) set .counttopunish, 0;end;// script startOnPCKillEvent:if ( getgmlevel() >= .gmnokill ) end;getmapxy .@map$,.@x,.@y,0;if ( !attachrid(killedrid) ) end; if ( killerrid != getcharid(3) && ( .msg_die || .msg_kill ) ) { if ( .msg_die ) message strcharinfo(0),"You have been killed by "+ rid2name(killerrid); if ( .msg_kill ) message rid2name(killerrid),"You just killed "+ strcharinfo(0); } if ( @PlayersKilledStreak >= .holyshit ) set .@streakname$,"Beyond Godlike"; else if ( @PlayersKilledStreak >= .godlike ) set .@streakname$,"Godlike"; else if ( @PlayersKilledStreak >= .monsterkill ) set .@streakname$,"Monster Kill"; else if ( @PlayersKilledStreak >= .wickedsick ) set .@streakname$,"Wicked Sick"; else if ( @PlayersKilledStreak >= .unstoppable ) set .@streakname$,"Unstoppable"; else if ( @PlayersKilledStreak >= .megakill ) set .@streakname$,"Mega-kill"; else if ( @PlayersKilledStreak >= .dominating ) set .@streakname$,"Dominating"; else if ( @PlayersKilledStreak >= .killingspree ) set .@streakname$,"Killing Spree";if ( @PlayersKilledStreak >= .killingspree && killerrid == getcharid(3) ) announce strcharinfo(0) +" has ended "+( (Sex)?"him":"her" )+" own "+ .@streakname$ +"["+ @PlayersKilledStreak +"] streak "+( (.Announcemap)?("at "+ .@map$):""),16|.Announce;else if ( @PlayersKilledStreak >= .killingspree ) announce rid2name(killerrid) +" has ended "+ strcharinfo(0) +"'s "+ .@streakname$ +"["+ @PlayersKilledStreak +"] streak "+( (.Announcemap)?("at "+ .@map$):""),16|.Announce;else if ( .Announcekill ) announce rid2name(killerrid) +" has pawned "+ strcharinfo(0) +"'s head "+( (.Announcemap)?("at "+ .@map$):""),16|.Announce;set @PlayersKilledStreak,0;set @dota_multikills,0;if ( .ownage && getcharid(.ownage) ) { setd ".dotaown_"+ getcharid(.ownage), 0; set .@killedgroup, getcharid(.ownage);}if ( killerrid == getcharid(3) || BaseLevel < .lvltokill ) end;if ( .minlvlrange ) set .@killedlvl, BaseLevel;if ( !attachrid(killerrid) ) end;if ( .minlvlrange && .@killedlvl + .minlvlrange < BaseLevel ) end;if ( .counttopunish ) { for ( set .@i,0; .@i < 60; set .@i, .@i +1 ) { if ( .@i == gettime(2) ) continue; deletearray getd("@sitkillid"+ .@i), 128; deletearray getd("@sitkilltimes"+ .@i), 128; } for ( set .@i,0; .@i < getarraysize( getd("@sitkillid"+ gettime(2)) ); set .@i, .@i +1 ) { if ( getd("@sitkillid"+ gettime(2) +"["+ .@i +"]") != killedrid ) continue; else { set .@sitkillfound, 1; setd "@sitkilltimes"+ gettime(2) +"["+ .@i +"]", getd("@sitkilltimes"+ gettime(2) +"["+ .@i +"]") +1; if ( getd("@sitkilltimes"+ gettime(2) +"["+ .@i +"]") >= .counttopunish ) { warp "SavePoint",0,0; announce strcharinfo(0) +" , Stop killing "+ rid2name(killedrid) + " !!!",0; debugmes strcharinfo(0) +" is sit-killing "+ rid2name(killedrid) +" for "+ getd("@sitkilltimes"+ gettime(2) +"["+ .@i +"]") + " times"; logmes "is sit-killing "+ rid2name(killedrid) +" for "+ getd("@sitkilltimes"+ gettime(2) +"["+ .@i +"]") +" times"; set @PlayersKilledStreak, @PlayersKilledStreak +1 - .counttopunish; if ( .ownage && getcharid(.ownage) ) setd ".dotaown_"+ getcharid(.ownage), getd(".dotaown_"+ getcharid(.ownage) ) +1 - .counttopunish; end; } } } if ( !.@sitkillfound ) { setd "@sitkillid"+ gettime(2) +"["+ .@i +"]", killedrid; setd "@sitkilltimes"+ gettime(2) +"["+ .@i +"]", 1; }}set @PlayersKilledStreak, @PlayersKilledStreak + 1;set PlayersKilled, PlayersKilled + 1; if ( @PlayersKilledStreak == .killingspree ) setarray .@streakname$,"killingspree.wav","on a KILLING SPREE","."; else if ( @PlayersKilledStreak == .dominating ) setarray .@streakname$,"dominating.wav","DOMINATING!","."; else if ( @PlayersKilledStreak == .megakill ) setarray .@streakname$,"megakill.wav","on a MEGA Spree!","."; else if ( @PlayersKilledStreak == .unstoppable ) setarray .@streakname$,"unstoppable.wav","UNSTOPPABLE!","."; else if ( @PlayersKilledStreak == .wickedsick ) setarray .@streakname$,"wickedsick.wav","WICKED SICK!","."; else if ( @PlayersKilledStreak == .monsterkill ) setarray .@streakname$,"monsterkill.wav","on a MONSTER Spree!","."; else if ( @PlayersKilledStreak == .godlike ) setarray .@streakname$,"godlike.wav","GODLIKE!",". Will someone ever stop "+( (Sex)?"him":"her" ) +"?"; else if ( @PlayersKilledStreak >= .holyshit && ( (@PlayersKilledStreak - .holyshit) % .continue == 0 ) ) setarray .@streakname$,"holyshit.wav","BEYOND GODLIKE!",". Someone kill "+( (Sex)?"him":"her" ) +"!";if ( .@streakname$[1] != "" ) { announce strcharinfo(0) +" "+ .@streakname$[1] +"["+ @PlayersKilledStreak +"] "+( (.Announcemap)?("at "+ .@map$):"") + .@streakname$[2],16|.Announce; if ( .sound == 1 ) soundeffectall .@streakname$[0],0,.@map$; else if ( .sound == 2 ) soundeffectall .@streakname$[0],0; else if ( .sound == 3 ) soundeffect .@streakname$[0],0;}set @dota_multikills, @dota_multikills + 1;deltimer "DOTAPVP::OnStreakReset";addtimer 11500,"DOTAPVP::OnStreakReset";if ( .ownage ) { set .@sideid, getcharid(.ownage); if ( .@sideid != .@killedgroup ) setd ".dotaown_"+ .@sideid, getd(".dotaown_"+ .@sideid ) + 1;}set .@dota_multikills, @dota_multikills;set .@origin, getcharid(3);sleep 1500;if ( .@sideid && .ownage && .@sideid != .@killedgroup && getd(".dotaown_"+ .@sideid) >= .owned && ( ( getd(".dotaown_"+ .@sideid) - .owned ) % .owncontinue == 0 ) ) { if ( .Announce ) mapannounce .@map$, "The "+( (.ownage == 1)?"party":"guild" )+" ["+( (.ownage == 1)?getpartyname(.@sideid):getguildname(.@sideid) )+"] is OWNING["+ getd(".dotaown_"+ .@sideid) +"] !!!",16; else announce "The "+( (.ownage == 1)?"party":"guild" )+" ["+( (.ownage == 1)?getpartyname(.@sideid):getguildname(.@sideid) )+"] is OWNING["+ getd(".dotaown_"+ .@sideid) +"] !!!",16; if ( .sound == 1 ) soundeffectall "ownage.wav",0,.@map$; else if ( .sound == 2 ) soundeffectall "ownage.wav",0; else if ( .sound == 3 && attachrid(.@origin) ) soundeffect "ownage.wav",0;}sleep 1250;if ( !attachrid(.@origin) ) end;if ( .@dota_multikills == 2 ) { if ( .Announce ) mapannounce .@map$, strcharinfo(0) +" just got a Double Kill !",16; else announce strcharinfo(0) +" just got a Double Kill !",16; if ( .sound == 1 ) soundeffectall "doublekill.wav",0,.@map$; else if ( .sound == 2 ) soundeffectall "doublekill.wav",0; else if ( .sound == 3 ) soundeffect "doublekill.wav",0;}else if ( .@dota_multikills >= 3 ) { if ( .Announce ) mapannounce .@map$, strcharinfo(0) +" just got a TRIPLE KILL !!!!!!",16; else announce strcharinfo(0) +" just got a TRIPLE KILL !!!!!!",16; if ( .sound == 1 ) soundeffectall "triplekill.wav",0,.@map$; else if ( .sound == 2 ) soundeffectall "triplekill.wav",0; else if ( .sound == 3 ) soundeffect "triplekill.wav",0;}end;OnWhisperGlobal:dispbottom "Your current Streak : "+ @PlayersKilledStreak;dispbottom "Your total Kills : "+ PlayersKilled;if ( .ownage && getcharid(.ownage) ) dispbottom "Your "+( (.ownage ==1)?"party":"guild" )+" Own : "+ getd(".dotaown_"+ getcharid(.ownage) );end;OnStreakReset:set @dota_multikills,0;end;}