Проблем с TeamAdvantage плъгина, направен само за админи

Ако имате затруднения при изработката/преработката на даден плъгин - пишете тук, ще се опитаме да ви помогнем!
Аватар
OciXCrom
Извън линия
Администратор
Администратор
Мнения: 7206
Регистриран на: 06 Окт 2016, 19:20
Местоположение: /resetscore
Се отблагодари: 117 пъти
Получена благодарност: 1295 пъти
Обратна връзка:

Re: Проблем с TeamAdvantage плъгина, направен само за админи

Мнение от OciXCrom » 16 Окт 2016, 21:53

Ако не си сигурен, че работи, няма как ние да сме сигурни, че редактираният не работи заради промените, които сме направили.
Почти съм убеден, че стандартният не работи, тъй като няма логика една проверка за флаг да го развали.

Аватар
By Shorty
Извън линия
Потребител
Потребител
Мнения: 51
Регистриран на: 11 Окт 2016, 15:31
Местоположение: Благоевград
Обратна връзка:

Re: Проблем с TeamAdvantage плъгина, направен само за админи

Мнение от By Shorty » 17 Окт 2016, 17:08

Ето това сигурно е стандартния плъгин, който не съм го пипал и би трябвало да работи за всички:
КОД: ИЗБЕРИ ВСИЧКИ
#include <amxmodx>
#include <fun>
#include <cstrike>

#define TS 1
#define CTS 2

new roundcount = 0
new losingteam = 0
new losingraw = 0
new ct_score = 0
new terro_score = 0
new typaide = 0
new cvar_losingraw
new cvar_typaide
new aide_dollar
new txt_team[3][] = {"no team","Terroristite","Counter-Terroristite"}

public plugin_init()
{
register_plugin("TeamAdvantage","0.1","VinZ**")
//register_event("ResetHUD", "new_round", "b")
register_event("HLTV", "new_round", "a", "1=0", "2=0")
register_event("TextMsg","game_restart","a","1=4","2&#Game_C","2&#Game_w")
register_event("SendAudio","team_score","a","2=%!MRAD_terwin","2=%!MRAD_ctwin","2=%!MRAD_rounddraw")
register_cvar("tadv_mode","1",0)
register_cvar("tadv_losingraw","1",0)
register_cvar("tadv_dollarraw","1000",0)
}

public team_score()
{
new team[64], oldlosingteam = losingteam
roundcount++
typaide = 0
cvar_typaide = get_cvar_num("tadv_mode")
cvar_losingraw = get_cvar_num("tadv_losingraw")
read_data(2,team,63)
if(containi(team,"ctwin")!=-1)
{
ct_score++
losingteam = TS
}
else if(containi(team,"terwin")!=-1)
{
terro_score++
losingteam = CTS
}
else if(containi(team,"draw")!=-1)
{
losingteam = oldlosingteam
}

new teamwonbyscore = wonbyscore(ct_score,terro_score)
if(teamwonbyscore==0 || teamwonbyscore==losingteam)
{
losingraw = 0
losingteam = 0
}

if(oldlosingteam == losingteam) losingraw++
else if(oldlosingteam != losingteam) losingraw = 0


if((losingraw + 1) >= cvar_losingraw && cvar_typaide != 0 && losingteam != 0)
{
typaide = cvar_typaide
if(typaide == 1)
{
aide_dollar = minval(get_cvar_num("tadv_dollarraw") * ((losingraw + 2) - cvar_losingraw),16000)
client_print(0,print_chat,"* %s zagubiha i poluchavat %d$",txt_team[losingteam],aide_dollar)
}
}
return PLUGIN_CONTINUE
}


public game_restart()
{
roundcount = 0
losingteam = 0
losingraw = 0
ct_score = 0
terro_score = 0
typaide = 0
}


public new_round()
{
if(typaide == 0) return PLUGIN_CONTINUE
new playercount, Players[32]
get_players(Players, playercount)
for(new i=0;i<playercount;i++)
{
new id = Players
if(get_user_team(id) == losingteam)
{
new parm[2]
parm[0] = id
set_task(0.5,"donneaide",id+3213,parm,2)
}
}
return PLUGIN_CONTINUE
}


public donneaide(parm[])
{
new id = parm[0]
if(!is_user_connected(id)) return

if(typaide == 1)
{
cs_set_user_money(id,min(aide_dollar + cs_get_user_money(id),16000))
}
}

public minval(a,b)
{
if(a < b)
{
return a
}
else if (b < a)
{
return b
}
return PLUGIN_CONTINUE;
}

public wonbyscore(ct,terro)
{
if(ct > terro)
{
return CTS
}
else if(terro > ct)
{
return TS
}
return PLUGIN_CONTINUE;
}


Но не съм сигурен дали работи, защото аз не съм го използвал до сега.. Просто го видях и го направих само за админи с определените флагове.


Не знам дали ще е от някаква полза но докато бях със оригиналния плъгин намирах по някога следния ерор:

Код за потвърждение: Избери целия код

[AMXX] Run time error 10 (plugin "bonus.amxx") (native "cs_get_user_money") - debug not enabled!
Дано да се разгадае мистерията
Connect 93.123.18.9:27015 }|{ E H C K A *OTPOBA* [Free VIP] 31/32 Status Изображение

93.123.18.9:27015 Click for connect with STEAM

Аватар
Ant1Lamer
Извън линия
Потребител
Потребител
Мнения: 217
Регистриран на: 08 Окт 2016, 00:03
Се отблагодари: 18 пъти
Получена благодарност: 3 пъти

Re: Проблем с TeamAdvantage плъгина, направен само за админи

Мнение от Ant1Lamer » 17 Окт 2016, 18:22

Я пробвай този аз съм с него и нямам проблеми никакви направено е на 3тия рунд да почне да дава тоест ако 2 последователни загубят на 3тия ще даде аз го ползвам от година и няма проблеми

Код за потвърждение: Избери целия код

/* AMX Mod script. 
* 
* (c) Copyright 2004, VinZ**
* Http://www.lespotos.6x.to 
* Report bugs at [email protected]
*
* CVARz :
* tadv_mode <0=No Help 1=Dollars Help 2=Health Help>
* tadv_losingraw <3 by default> numbers of rounds losts in a raw to give help to losing team
* tadv_dollarraw <1000 by default> amount of dollars given by losing raw lost
* tadv_hpraw <10 by default> amount of health given by losing raw lost
* 
*/ 

#include <amxmodx> 
#include <fun>
#include <cstrike>
#include <hamsandwich>

#define Terrorists	1
#define Counter-Terrorists	2

new roundcount = 0
new losingteam = 0
new losingraw = 0
new ct_score = 0 
new terro_score = 0 
new typaide = 0 
new cvar_losingraw
new cvar_typaide
new aide_dollar
new txt_team[3][] = {"No Team","Terrorists","Counter-Terrorists"}
	
public team_score(){ 
   
	new team[64], oldlosingteam = losingteam
	
	roundcount++
	
	typaide = 0
	cvar_typaide = get_cvar_num("tadv_mode")
	cvar_losingraw = get_cvar_num("tadv_losingraw")
	
	read_data(2,team,63) 
	
	if (containi(team,"ctwin")!=-1){ 
		ct_score++
		losingteam = Terrorists
	}else if (containi(team,"terwin")!=-1) {
		terro_score++ 
		losingteam = Counter-Terrorists
	} else if (containi(team,"draw")!=-1) { 
		losingteam = oldlosingteam
	} 	
	
	if (oldlosingteam == losingteam)
		losingraw++
	else if (oldlosingteam != losingteam)
		losingraw = 0
	
		
	if ((losingraw + 1) >= cvar_losingraw && cvar_typaide != 0 && losingteam != 0){
		
		typaide = cvar_typaide
		
		if (typaide == 1){
			aide_dollar = minval(get_cvar_num("tadv_dollarraw") * ((losingraw + 2) - cvar_losingraw),16000)			
			ColorMessage(0,"^4[Server Name]^1 ^3%s^1 Gubqt i poluchavat bonus ^4%d$^1",txt_team[losingteam],aide_dollar)
		
		}
		
	}
	
	return PLUGIN_CONTINUE 
    
} 

public game_restart(){
	roundcount = 0
	losingteam = 0
	losingraw = 0
	ct_score = 0 
	terro_score = 0 
	typaide = 0
}

public new_round(id){
	
	if(!is_user_alive(id)) return
	
	if (typaide == 0)
		return
		
	if (get_user_team(id) == losingteam){
		
		new parm[2]
		
		parm[0] = id
		
		set_task(0.5,"donneaide",id+3213,parm,2)
		
	}
	
	return
}

public donneaide(parm[]){
	
	new id = parm[0]
	
	if (typaide == 1 && is_user_connected(id)){		
	
		cs_set_user_money (id,min(aide_dollar + cs_get_user_money(id),16000))	
	}
}

minval(a,b){
	if (a < b)
		return a
	else if (b < a)
		return b
	
	return a		
}

public plugin_init(){ 
	
	register_plugin("TeamAdvantage","0.1","VinZ**") 
		
	RegisterHam(Ham_Spawn,"player","new_round",1)
	register_event("TextMsg","game_restart","a","1=4","2&#Game_C","2&#Game_w")
	register_event("SendAudio","team_score","a","2=%!MRAD_terwin","2=%!MRAD_ctwin","2=%!MRAD_rounddraw")

	register_cvar("tadv_mode","1",0)
	register_cvar("tadv_losingraw","3",0)
	register_cvar("tadv_dollarraw","1000",0)
	
	return PLUGIN_CONTINUE 
} 

stock ColorMessage(const id, const input[], any:...){
    new count = 1, players[32];
    static msg[ 191 ];
    vformat(msg, 190, input, 3);
    if (id) players[0] = id; else get_players(players , count , "ch"); {
        for (new i = 0; i < count; i++){
            if (is_user_connected(players[i])){
                message_begin(MSG_ONE_UNRELIABLE , get_user_msgid("SayText"), _, players[i]);
                write_byte(players[i]);
                write_string(msg);
                message_end();}}}
}

Код за потвърждение: Избери целия код

ColorMessage(0,"^4[Server Name]^1 ^3%s^1 Gubqt i poluchavat bonus ^4%d$^1",txt_team[losingteam],aide_dollar)
Където е Server Name си напиши името на сървъра понеже съм си го направил с цветен

Забравих да поясна, че е за всички не е кактo ти искаш само за админи
НАУЧИ ПРАВИЛАТА, ЗА ДА ЗНАЕШ КАК ПОРЯДЪЧНО ДА ГИ НАРУШАВАШ!!!

Публикувай отговор
  • Подобни теми
    Отговори
    Преглеждания
     Последно мнение

Обратно към “Помощ в скриптирането”

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 3 госта