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

Menu z noktowizoramiKolorowymi


  • Zamknięty Temat jest zamknięty
3 odpowiedzi w tym temacie

#1 daedhelil

    Profesjonalista

  • Użytkownik

Reputacja: 8
Nowy

  • Postów:152
Offline

Napisano 28.05.2010 16:57

Witam, mam problem z pewnym pluginem. Chodzi o to, że po wybraniu noktowizora, dostaje go, odpala się, lecz nie tak jak powinien. Kolor z pluginu nakłada się na standardowy zielony. Mógłby ktoś to naprawić?

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <hamsandwich>
#include <cstrike>
#include <fun>
#include <engine>

new color[33][3]
new message

public plugin_init()
{
register_plugin("Nightvision menu", "0.01", "G[o]Q");
register_forward(FM_EmitSound, "Fwd_EmitSound");
message = get_user_msgid("ScreenFade");
register_logevent("Poczatek_Rundy", 2, "1=Round_Start")
}

public Poczatek_Rundy()
{
for(new i=1;i<33;i++){
if(!is_user_connected(i)) continue;
if(task_exists(i))
remove_task(i);
if(is_user_alive(i))
{
if(cs_get_user_team(i) == CS_TEAM_T)
{
Show(i)
}
}
}
}

public Show(id)
{
new xmenu=menu_create("\rNightvision menu:","Pressed");

menu_additem(xmenu,"Blue");
menu_additem(xmenu,"Red");
menu_additem(xmenu,"Yellow");

menu_setprop(xmenu,MPROP_NUMBER_COLOR,"\r");
menu_display(id, xmenu,0);
return PLUGIN_HANDLED;
}

public Pressed(id, menu, item)
{
switch(item)
{
case 0:{ //Blue
color[id]={0,0,255}
cs_set_user_nvg(id,11)
engclient_cmd(id,"nightvision")
}
case 1:{ //Red
color[id]={255,0,0}
cs_set_user_nvg(id,11)
engclient_cmd(id,"nightvision")
}
case 2:{ //Yellow
color[id]={255,255,0}
cs_set_user_nvg(id,11)
engclient_cmd(id,"nightvision")
}
}
}

public Fwd_EmitSound(id, iChannel, szSound[], Float:fVol, Float:fAttn, iFlags, iPitch )
{
if(equali(szSound, "items/nvg_on.wav"))
{
ustaw(id)
set_task(0.1,"ustaw",id,_,_,"b")
}
if(equali(szSound, "items/nvg_off.wav"))
{
remove_task(id)
}
}

public ustaw(id)
{
set_nvg(id,color)
light(id)
}

stock set_nvg(id,color[][])
{
message_begin(MSG_ONE_UNRELIABLE,message,{0,0,0},id)
write_short(1000)
write_short(1000)
write_short(1<<10)
write_byte(0)
write_byte(0)
write_byte(0)
write_byte(0)
message_end()
message_begin(MSG_ONE_UNRELIABLE,message,{0,0,0},id)
write_short(1000)
write_short(1000)
write_short(1<<10)
write_byte(color[id][0])
write_byte(color[id][1])
write_byte(color[id][2])
write_byte(145)
message_end()
}

stock light(id)
{
if(!is_user_alive(id)) return PLUGIN_HANDLED
new Float:forigin[3], origin[3]
pev(id,pev_origin,forigin)
FVecIVec(forigin,origin)
message_begin(MSG_ONE_UNRELIABLE,SVC_TEMPENTITY,{0,0,0},id)
write_byte(27)
write_coord(origin[0])
write_coord(origin[1])
write_coord(origin[2])
write_byte(120) //Radius
write_byte(color[id][0])
write_byte(color[id][1])
write_byte(color[id][2])
write_byte(40)
write_byte(100)
message_end()

return PLUGIN_CONTINUE
}

Użytkownik tEc. edytował ten post 28.05.2010 21:05

  • +
  • -
  • 0

#2 hardbot

    Banned

  • Zbanowany

Reputacja: 0
Nowy

  • Postów:3 049
Offline

Napisano 28.05.2010 20:42

Przetestuj tak:

[
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <hamsandwich>
#include <cstrike>
#include <fun>
#include <engine>

new color[33][3]
new message

public plugin_init()
{
register_plugin("Nightvision menu", "0.01", "YY");
register_forward(FM_EmitSound, "Fwd_EmitSound");
message = get_user_msgid("ScreenFade");
register_logevent("Poczatek_Rundy", 2, "1=Round_Start")
}

public Poczatek_Rundy()
{
for(new i=1;i<33;i++){
if(!is_user_connected(i)) continue;
if(task_exists(i))
remove_task(i);
if(is_user_alive(i))
{
if(cs_get_user_team(i) == CS_TEAM_T)
{
Show(i)
}
}
}
}

public Show(id)
{
new xmenu=menu_create("\rNightvision menu:","Pressed");

menu_additem(xmenu,"Blue");
menu_additem(xmenu,"Red");
menu_additem(xmenu,"Yellow");

menu_setprop(xmenu,MPROP_NUMBER_COLOR,"\r");
menu_display(id, xmenu,0);
return PLUGIN_HANDLED;
}

public Pressed(id, menu, item)
{
switch(item)
{
case 0:{ //Blue
color[id]={0,0,255}
cs_set_user_nvg(id,11)
}
case 1:{ //Red
color[id]={255,0,0}
cs_set_user_nvg(id,11)
}
case 2:{ //Yellow
color[id]={255,255,0}
cs_set_user_nvg(id,11)
}
}
}

public Fwd_EmitSound(id, iChannel, szSound[], Float:fVol, Float:fAttn, iFlags, iPitch )
{
if(equali(szSound, "items/nvg_on.wav"))
{
ustaw(id)
set_task(0.1,"ustaw",id,_,_,"b")
}
if(equali(szSound, "items/nvg_off.wav"))
{
remove_task(id)
}
}

public ustaw(id)
{
set_nvg(id,color)
light(id)
}

stock set_nvg(id,color[][])
{
message_begin(MSG_ONE_UNRELIABLE,message,{0,0,0},id)
write_short(1000)
write_short(1000)
write_short(1<<10)
write_byte(0)
write_byte(0)
write_byte(0)
write_byte(0)
message_end()
message_begin(MSG_ONE_UNRELIABLE,message,{0,0,0},id)
write_short(1000)
write_short(1000)
write_short(1<<10)
write_byte(color[id][0])
write_byte(color[id][1])
write_byte(color[id][2])
write_byte(145)
message_end()
}

stock light(id)
{
if(!is_user_alive(id)) return PLUGIN_HANDLED
new Float:forigin[3], origin[3]
pev(id,pev_origin,forigin)
FVecIVec(forigin,origin)
message_begin(MSG_ONE_UNRELIABLE,SVC_TEMPENTITY,{0,0,0},id)
write_byte(27)
write_coord(origin[0])
write_coord(origin[1])
write_coord(origin[2])
write_byte(120) //Radius
write_byte(color[id][0])
write_byte(color[id][1])
write_byte(color[id][2])
write_byte(40)
write_byte(100)
message_end()

return PLUGIN_CONTINUE
}


#3 G[o]Q

    I'm G[o]Q

  • Przyjaciel

Reputacja: 1 344
Godlike

  • Postów:3 563
  • Steam:steam
  • Imię:Krzysiek
  • Lokalizacja:C: / program Files / Valve / Cstrike / G[o]Q.dem
Offline

Napisano 28.05.2010 20:49

tec i w tym momencie powinienes dostac warna za skopiowanie mojego kodu ktory tam kiedys ci napisalem i zmienienie informacji o autorze :/

Użytkownik G[o]Q edytował ten post 28.05.2010 20:49

  • +
  • -
  • 0
Manual ponad wszystko, konsola ponad manual :D :&

Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka

GG:6022845 (nie pomagam za free osobom ponizej rangi MoD) :D

#4 daedhelil

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 8
Nowy

  • Postów:152
Offline

Napisano 28.05.2010 21:05

Oj, wybacz nie pamiętałem co tam było. Już poprawiam, przepraszam.
---
hardbot, usunąłeś tylko automatyczne odpalanie noktowizora :(
To zrobi mi to ktoś? :D
---
Można skorzystać z tego pluginu

#include <amxmodx>
#include <cstrike>

new const g_PLUGIN[] = "Custom NVG Color"
new const g_VERSION[] = "0.3"
new const g_AUTHOR[] = "SAMURAI"

#define g_ALPHA 150

new bool:NightVisionUse[33]
new gmsgFade

new pnable, pcolor, pnumdecay, pnumradius, pnumlife;

public plugin_init()
{
register_plugin(g_PLUGIN,g_VERSION,g_AUTHOR);

register_concmd("nightvision","ToggleNVG")

pnable = register_cvar("custom_nvg","1");
pcolor = register_cvar("custom_nvg_rgb","255 0 255");
pnumdecay = register_cvar("custom_nvg_decay","10");
pnumradius = register_cvar("custom_nvg_radius","125");
pnumlife = register_cvar("custom_nvg_life","1");

register_event("ResetHUD","ev_new_round","be");
gmsgFade = get_user_msgid("ScreenFade");
}

public client_putinserver(id)
{
NightVisionUse[id] = false;
}


public client_disconnect(id)
{
if (!id) return PLUGIN_CONTINUE;

if (NightVisionUse[id]) StopNVG(id)

return PLUGIN_CONTINUE;
}


public ToggleNVG(id)
{
if(get_pcvar_num(pnable) == 0)
return PLUGIN_CONTINUE;

if ( (NightVisionUse[id]) || !cs_get_user_nvg(id)) StopNVG(id)

else StartNVG(id)

return PLUGIN_HANDLED;
}

public StartNVG(id)
{


emit_sound(id,CHAN_ITEM,"items/nvg_on.wav",1.0,ATTN_NORM,0,PITCH_NORM)

set_task(0.1,"RunNVG",id+111111,_,_,"b")
set_task(0.1,"RunNVG2",id+222222,_,_,"b")

NightVisionUse[id] = true;

return PLUGIN_HANDLED;
}


public StopNVG(id)
{
emit_sound(id,CHAN_ITEM,"items/nvg_off.wav",1.0,ATTN_NORM,0,PITCH_NORM)

remove_task(id+111111)
remove_task(id+222222)

NightVisionUse[id] = false;

return PLUGIN_HANDLED;
}


public RunNVG(taskid)
{
new id = taskid - 111111

if (!is_user_alive(id)) return

new origin[3]
get_user_origin(id,origin,3)

new color[17];
get_pcvar_string(pcolor,color,16);

new iRed[5], iGreen[7], iBlue[5]
parse(color,iRed,4,iGreen,6,iBlue,4)

// start the message
message_begin(MSG_ONE_UNRELIABLE,SVC_TEMPENTITY,{0,0,0},id)

write_byte(TE_DLIGHT) // 27

write_coord(origin[0])
write_coord(origin[1])
write_coord(origin[2])

write_byte(get_pcvar_num(pnumradius)) // radius

write_byte(str_to_num(iRed)) // r
write_byte(str_to_num(iGreen)) // g
write_byte(str_to_num(iBlue)) // b

write_byte(get_pcvar_num(pnumlife)) // life in 10's
write_byte(get_pcvar_num(pnumdecay)) // decay rate in 10's

message_end()


}

public RunNVG2(taskid)
{
new id = taskid - 222222

if (!is_user_alive(id)) return

new color[17];
get_pcvar_string(pcolor,color,16);

new iRed[5], iGreen[7], iBlue[5]
parse(color,iRed,4,iGreen,6,iBlue,4)

message_begin(MSG_ONE_UNRELIABLE,gmsgFade,{0,0,0},id)

write_short(1000)
write_short(1000)
write_short(1<<12)

write_byte(str_to_num(iRed))
write_byte(str_to_num(iGreen))
write_byte(str_to_num(iBlue))

write_byte(g_ALPHA)

message_end()
}

public ev_new_round(id)
{

StopNVG(id)
NightVisionUse[id] = false;
}

Użytkownik tEc. edytował ten post 29.05.2010 03:31

  • +
  • -
  • 0




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

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