Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

przerobieniu pluginu


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
2 odpowiedzi w tym temacie

#1 Wituch

    Zaawansowany

  • Użytkownik

Reputacja: 1
Nowy

  • Postów:94
  • Imię:Arek
  • Lokalizacja:Wrocław
Offline

Napisano 22.04.2018 22:53

Witam posiadam plugin na rozgrzewke  na granaty
 
chcialbym zmienic w nim jezeli jest to mozliwe ...
 
aby nie zalaczal sie jezeli jest sytuacja taka ze przykladowo gra dwoch graczy po jednym w druzynie 
 
kiedy jeden wyjdzie z serwera i wejdzie nastepny nastepuje zalaczenie sie rozgrzewki i robi sie restart...
 
mam plugin ktory naprawia czas trwania mapy sprzed resetu ale to nie zadowala mnie..
 
poprostu chcialbym aby plugin wlaczal sie tylko na poczatku kazdej mapy  a nie kilka razy w trakcie jej trwania..

 

jeszcze jeden problem jest taki ze czasami rozgrzewka sie zacina "buguje" i caly czas granaty są i sie nie konczy.
 
podaje KOD czy moze ktos cos zrobic?

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <fakemeta_util>
#include <hamsandwich>
 
#define PLUGIN "Rozgrzewka nr blablabla"
#define VERSION "1.2.2"
#define AUTHOR "R3X"
 
new const gszMusic[]="misc/ziomek.mp3"; //cstrike/sound/[gszMusic]
new const gszPausePlugins[][]=
 
{
"RoundSound.amxx",
"M_Antirusher_2.6_alfa.amxx"
};
 
 
new const giColor[3]={0, 200,200};
 
#define MAX_PLAYERS 32
#define SPAWN_TASKID 9999
#define TASK_EQUIP 99999
#define RESTART_TASKID 123
#define ACTIVE_TASKID 124
 
new bool:Active=false;
new bool:gbPlay[33];
 
new Float:fPosition[2];
 
new g_cvarRTime;
new g_cvarFreeze;
new g_cvarTimerX,g_cvarTimerY, g_cvarDelay, g_cvarSpawnDelay;
 
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR);
 
register_event("TextMsg", "Game_Restart", "a", "2&#Game_C");
register_event("DeathMsg","onDeath","a");
register_event("CurWeapon","eventCurWeapon","be","1=0", "2!0");
 
RegisterHam(Ham_Spawn, "player", "fwSpawn",1);
register_forward(FM_SetModel, "fwSetModel",1);
register_event("HLTV", "setWeapons", "a", "1=0", "2=0");
 
g_cvarRTime=register_cvar("restart_time","45");
g_cvarTimerX=register_cvar("restart_timer_pozx","0.01",0,0.01);
g_cvarTimerY=register_cvar("restart_timer_pozy","0.86",0,0.86);
g_cvarDelay=register_cvar("restart_weapondelay","2.0",0,2.0);
g_cvarSpawnDelay=register_cvar("restart_spawndelay","2.0",0,2.0);
 
g_cvarFreeze=get_cvar_pointer("mp_freezetime");
 
blockBuy();
}
public plugin_precache(){
precache_sound(gszMusic);
}
 
public Game_Restart()
{
if(Active){
remove_task(RESTART_TASKID);
return;
}
Active=true;
new iRTime=get_pcvar_num(g_cvarRTime)+get_pcvar_num(g_cvarFreeze)+1;
 
for(new i=1;i<33;i++)
gbPlay[i]=true;
 
fPosition[0]=get_pcvar_float(g_cvarTimerX);
fPosition[1]=get_pcvar_float(g_cvarTimerY);
new param[1];
param[0]=iRTime;
set_task(1.0,"CountDown",RESTART_TASKID,param,1);
 
for(new i=0;i<sizeof gszPausePlugins;i++)
pause("ac",gszPausePlugins[i]);

}
public CountDown(param[1]){
new iNow=param[0]--;
switch(iNow){
case 0:{
server_cmd("sv_restartround 1");
clearRespawns();
new param[1];
param[0]=0;
set_task(1.0,"Activation",ACTIVE_TASKID,param,1);
for(new i=0;i<sizeof gszPausePlugins;i++)
unpause("ac",gszPausePlugins[i]);
}
case 1:{
client_cmd(0,"speak one");
}
case 2:{
client_cmd(0,"speak two");
}
case 3:{
client_cmd(0,"speak three");
}
}
if(iNow>=1)
set_task(1.0,"CountDown",RESTART_TASKID,param,1);
new fx=0;
if(iNow<=5){
fx=1;
}
set_hudmessage(giColor[0], giColor[1], giColor[2], fPosition[0], fPosition[1], fx, 6.0, 1.0)
show_hudmessage(0, "Czas rozgrzewki^n%2d:%02d",iNow/60,iNow%60);
}
public Activation(param[1]){
Active=(param[0]==0)?false:true;
}
public onDeath(){
new vid=read_data(2);
if(Active)
set_task(get_pcvar_float(g_cvarSpawnDelay),"respawn",SPAWN_TASKID+vid);
return PLUGIN_CONTINUE;
}
public fwSpawn(id){
if(Active && is_user_alive(id)){
if(gbPlay[id]){
play(id, gszMusic);
gbPlay[id]=false;
}
if(task_exists(TASK_EQUIP+id))
remove_task(TASK_EQUIP+id);
set_task(0.2, "taskEquip", TASK_EQUIP+id);
}
}
public eventCurWeapon(id){
if(Active){
if(task_exists(TASK_EQUIP+id))
remove_task(TASK_EQUIP+id);
set_task(0.5, "taskEquip", TASK_EQUIP+id);
}
}
public taskEquip(id){
id-=TASK_EQUIP;
if(Active && is_user_alive(id)){
fm_strip_user_weapons(id);
fm_give_item(id, "weapon_hegrenade");
}
}
public fwSetModel(ent, szModel[]){
if(Active){
if(equal(szModel[7], "w_hegrenade.mdl"))
set_task(get_pcvar_float(g_cvarDelay), "taskEquip", TASK_EQUIP+pev(ent,pev_owner));
else{
static szClass[32];
pev(ent, pev_classname,szClass ,31);
if(equal(szClass, "weaponbox") || 
contain(szClass, "weapon_")==0 ||
contain(szClass, "item_")==0 
){
set_pev(ent, pev_solid, SOLID_NOT);
fm_set_rendering(ent, _, _,_,_,kRenderTransAlpha,0);
}
}
}
}
public respawn(task_id){
ExecuteHamB(Ham_CS_RoundRespawn,task_id-SPAWN_TASKID);
}
public clearRespawns(){
for(new i=1;i<=MAX_PLAYERS;i++){
if(task_exists(SPAWN_TASKID+i))
remove_task(SPAWN_TASKID+i);
if(task_exists(TASK_EQUIP+i))
remove_task(TASK_EQUIP+i);
}
}
 
public blockBuy(){
register_clcmd("drop","block")
register_clcmd("cl_setautobuy","block")
register_clcmd("cl_autobuy","block")
register_clcmd("cl_setrebuy","block")
register_clcmd("cl_rebuy","block")
register_clcmd("buy","block")
register_clcmd("p228","block");
register_clcmd("228compact","block");
register_clcmd("shield","block");
register_clcmd("scout","block");    
register_clcmd("hegren","block");               
register_clcmd("xm1014","block");
register_clcmd("autoshotgun","block");                   
register_clcmd("mac10","block");                
register_clcmd("aug","block");
register_clcmd("bullpup","block");
register_clcmd("sgren","block");   
register_clcmd("elites","block");     
register_clcmd("fn57","block");
register_clcmd("fiveseven","block");  
register_clcmd("ump45","block");                
register_clcmd("sg550","block");
register_clcmd("krieg550","block");   
register_clcmd("galil","block");
register_clcmd("defender","block");  
register_clcmd("famas","block");
register_clcmd("clarion","block");   
register_clcmd("usp","block");
register_clcmd("km45","block");       
register_clcmd("glock","block");
register_clcmd("9x19mm","block");     
register_clcmd("awp","block");
register_clcmd("magnum","block");     
register_clcmd("mp5","block");
register_clcmd("smg","block");       
register_clcmd("m249","block");                 
register_clcmd("m3","block");
register_clcmd("12gauge","block");   
register_clcmd("m4a1","block");                 
register_clcmd("tmp","block");
register_clcmd("mp","block");         
register_clcmd("g3sg1","block");
register_clcmd("d3au1","block");    
register_clcmd("flash","block");                
register_clcmd("deagle","block");
register_clcmd("nighthawk","block"); 
register_clcmd("sg552","block");
register_clcmd("krieg552","block");   
register_clcmd("ak47","block");
register_clcmd("cv47","block");                        
register_clcmd("p90","block");
register_clcmd("c90","block");
register_clcmd("primammo","block");
register_clcmd("secammo","block");
register_clcmd("vest","block");
register_clcmd("vesthelm","block");
register_clcmd("nvgs","block");
}
public block(id){
if(Active){
client_print(id,print_center,"Nie tym razem");
return PLUGIN_HANDLED;
}
return PLUGIN_CONTINUE;
}
public setWeapons(){
//weapons
new ent=-1;
do{
ent=engfunc(EngFunc_FindEntityByString, ent,"classname", "armoury_entity");
if(pev_valid( ent )) {
set_pev(ent, pev_solid, (Active)?SOLID_NOT:1);
fm_set_rendering(ent,kRenderFxNone, 0,0,0, kRenderTransTexture,(Active)?0:255);
}
}
while(ent);
}
 
play(id,const sound[])
{
new end=strlen(sound)-4;
if(containi(sound,".mp3") == end && end>0)
client_cmd(id,"mp3 play sound/%s",sound);
else if(containi(sound,".wav") == end && end>0)
client_cmd(id, "spk sound/%s",sound);
else
client_cmd(id, "speak %s",sound);
 
}

Użytkownik Wituch edytował ten post 22.04.2018 23:07

  • +
  • -
  • 0

#2 FireMachine

    Pomocny

  • Użytkownik

Reputacja: 25
Życzliwy

  • Postów:48
  • GG:
  • Imię:Michał
  • Lokalizacja:Gdańsk
Offline

Napisano 23.04.2018 09:41

Wrzucaj pliki SMA jako załączniki bo tego kodu nie da się przeczytać.

A chęci by nadkładać robotę przez parsowanie tekstu nikt nie ma


  • +
  • -
  • 0

Pomogłem?

Zostaw plusa zanim ja postawie plusa nad tobą  :D 


#3 FireMachine

    Pomocny

  • Użytkownik

Reputacja: 25
Życzliwy

  • Postów:48
  • GG:
  • Imię:Michał
  • Lokalizacja:Gdańsk
Offline

Napisano 23.04.2018 14:47

Powinno dzialac

Nie mogłem poprzedniego edytować

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <fakemeta_util>
#include <hamsandwich>
 
#define PLUGIN "Rozgrzewka nr blablabla"
#define VERSION "1.2.2"
#define AUTHOR "R3X"
 
new bool:bylo
new const gszMusic[]="misc/ziomek.mp3"; //cstrike/sound/[gszMusic]
new const gszPausePlugins[][]=
 
{
"RoundSound.amxx",
"M_Antirusher_2.6_alfa.amxx"
};
 
 
new const giColor[3]={0, 200,200};
 
#define MAX_PLAYERS 32
#define SPAWN_TASKID 9999
#define TASK_EQUIP 99999
#define RESTART_TASKID 123
#define ACTIVE_TASKID 124
 
new bool:Active=false;
new bool:gbPlay[33];
 
new Float:fPosition[2];
 
new g_cvarRTime;
new g_cvarFreeze;
new g_cvarTimerX,g_cvarTimerY, g_cvarDelay, g_cvarSpawnDelay;
 
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR);
 
register_event("TextMsg", "Game_Restart", "a", "2&#Game_C");
register_event("DeathMsg","onDeath","a");
register_event("CurWeapon","eventCurWeapon","be","1=0", "2!0");
 
RegisterHam(Ham_Spawn, "player", "fwSpawn",1);
register_forward(FM_SetModel, "fwSetModel",1);
register_event("HLTV", "setWeapons", "a", "1=0", "2=0");
 
g_cvarRTime=register_cvar("restart_time","45");
g_cvarTimerX=register_cvar("restart_timer_pozx","0.01",0,0.01);
g_cvarTimerY=register_cvar("restart_timer_pozy","0.86",0,0.86);
g_cvarDelay=register_cvar("restart_weapondelay","2.0",0,2.0);
g_cvarSpawnDelay=register_cvar("restart_spawndelay","2.0",0,2.0);
 
g_cvarFreeze=get_cvar_pointer("mp_freezetime");
 
blockBuy();
}
public plugin_precache(){
precache_sound(gszMusic);
}
 
public Game_Restart()
{
if(Active||bylo){
remove_task(RESTART_TASKID);
return;
}
bylo=true
Active=true;
new iRTime=get_pcvar_num(g_cvarRTime)+get_pcvar_num(g_cvarFreeze)+1;
 
for(new i=1;i<33;i++)
gbPlay[i]=true;
 
fPosition[0]=get_pcvar_float(g_cvarTimerX);
fPosition[1]=get_pcvar_float(g_cvarTimerY);
new param[1];
param[0]=iRTime;
set_task(1.0,"CountDown",RESTART_TASKID,param,1);
 
for(new i=0;i<sizeof gszPausePlugins;i++)
pause("ac",gszPausePlugins[i]);

}
public CountDown(param[1]){
new iNow=param[0]--;
switch(iNow){
case 0:{
server_cmd("sv_restartround 1");
clearRespawns();
new param[1];
param[0]=0;
set_task(1.0,"Activation",ACTIVE_TASKID,param,1);
for(new i=0;i<sizeof gszPausePlugins;i++)
unpause("ac",gszPausePlugins[i]);
}
case 1:{
client_cmd(0,"speak one");
}
case 2:{
client_cmd(0,"speak two");
}
case 3:{
client_cmd(0,"speak three");
}
}
if(iNow>=1)
set_task(1.0,"CountDown",RESTART_TASKID,param,1);
new fx=0;
if(iNow<=5){
fx=1;
}
set_hudmessage(giColor[0], giColor[1], giColor[2], fPosition[0], fPosition[1], fx, 6.0, 1.0)
show_hudmessage(0, "Czas rozgrzewki^n%2d:%02d",iNow/60,iNow%60);
}
public Activation(param[1]){
Active=(param[0]==0)?false:true;
}
public onDeath(){
new vid=read_data(2);
if(Active)
set_task(get_pcvar_float(g_cvarSpawnDelay),"respawn",SPAWN_TASKID+vid);
return PLUGIN_CONTINUE;
}
public fwSpawn(id){
if(Active && is_user_alive(id)){
if(gbPlay[id]){
play(id, gszMusic);
gbPlay[id]=false;
}
if(task_exists(TASK_EQUIP+id))
remove_task(TASK_EQUIP+id);
set_task(0.2, "taskEquip", TASK_EQUIP+id);
}
}
public eventCurWeapon(id){
if(Active){
if(task_exists(TASK_EQUIP+id))
remove_task(TASK_EQUIP+id);
set_task(0.5, "taskEquip", TASK_EQUIP+id);
}
}
public taskEquip(id){
id-=TASK_EQUIP;
if(Active && is_user_alive(id)){
fm_strip_user_weapons(id);
fm_give_item(id, "weapon_hegrenade");
}
}
public fwSetModel(ent, szModel[]){
if(Active){
if(equal(szModel[7], "w_hegrenade.mdl"))
set_task(get_pcvar_float(g_cvarDelay), "taskEquip", TASK_EQUIP+pev(ent,pev_owner));
else{
static szClass[32];
pev(ent, pev_classname,szClass ,31);
if(equal(szClass, "weaponbox") || 
contain(szClass, "weapon_")==0 ||
contain(szClass, "item_")==0 
){
set_pev(ent, pev_solid, SOLID_NOT);
fm_set_rendering(ent, _, _,_,_,kRenderTransAlpha,0);
}
}
}
}
public respawn(task_id){
ExecuteHamB(Ham_CS_RoundRespawn,task_id-SPAWN_TASKID);
}
public clearRespawns(){
for(new i=1;i<=MAX_PLAYERS;i++){
if(task_exists(SPAWN_TASKID+i))
remove_task(SPAWN_TASKID+i);
if(task_exists(TASK_EQUIP+i))
remove_task(TASK_EQUIP+i);
}
}
 
public blockBuy(){
register_clcmd("drop","block")
register_clcmd("cl_setautobuy","block")
register_clcmd("cl_autobuy","block")
register_clcmd("cl_setrebuy","block")
register_clcmd("cl_rebuy","block")
register_clcmd("buy","block")
register_clcmd("p228","block");
register_clcmd("228compact","block");
register_clcmd("shield","block");
register_clcmd("scout","block");    
register_clcmd("hegren","block");               
register_clcmd("xm1014","block");
register_clcmd("autoshotgun","block");                   
register_clcmd("mac10","block");                
register_clcmd("aug","block");
register_clcmd("bullpup","block");
register_clcmd("sgren","block");   
register_clcmd("elites","block");     
register_clcmd("fn57","block");
register_clcmd("fiveseven","block");  
register_clcmd("ump45","block");                
register_clcmd("sg550","block");
register_clcmd("krieg550","block");   
register_clcmd("galil","block");
register_clcmd("defender","block");  
register_clcmd("famas","block");
register_clcmd("clarion","block");   
register_clcmd("usp","block");
register_clcmd("km45","block");       
register_clcmd("glock","block");
register_clcmd("9x19mm","block");     
register_clcmd("awp","block");
register_clcmd("magnum","block");     
register_clcmd("mp5","block");
register_clcmd("smg","block");       
register_clcmd("m249","block");                 
register_clcmd("m3","block");
register_clcmd("12gauge","block");   
register_clcmd("m4a1","block");                 
register_clcmd("tmp","block");
register_clcmd("mp","block");         
register_clcmd("g3sg1","block");
register_clcmd("d3au1","block");    
register_clcmd("flash","block");                
register_clcmd("deagle","block");
register_clcmd("nighthawk","block"); 
register_clcmd("sg552","block");
register_clcmd("krieg552","block");   
register_clcmd("ak47","block");
register_clcmd("cv47","block");                        
register_clcmd("p90","block");
register_clcmd("c90","block");
register_clcmd("primammo","block");
register_clcmd("secammo","block");
register_clcmd("vest","block");
register_clcmd("vesthelm","block");
register_clcmd("nvgs","block");
}
public block(id){
if(Active){
client_print(id,print_center,"Nie tym razem");
return PLUGIN_HANDLED;
}
return PLUGIN_CONTINUE;
}
public setWeapons(){
//weapons
new ent=-1;
do{
ent=engfunc(EngFunc_FindEntityByString, ent,"classname", "armoury_entity");
if(pev_valid( ent )) {
set_pev(ent, pev_solid, (Active)?SOLID_NOT:1);
fm_set_rendering(ent,kRenderFxNone, 0,0,0, kRenderTransTexture,(Active)?0:255);
}
}
while(ent);
}
 
play(id,const sound[])
{
new end=strlen(sound)-4;
if(containi(sound,".mp3") == end && end>0)
client_cmd(id,"mp3 play sound/%s",sound);
else if(containi(sound,".wav") == end && end>0)
client_cmd(id, "spk sound/%s",sound);
else
client_cmd(id, "speak %s",sound);
 
}

Użytkownik FireMachine edytował ten post 23.04.2018 14:47

  • +
  • -
  • 0

Pomogłem?

Zostaw plusa zanim ja postawie plusa nad tobą  :D 





Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych