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

Dodanie balwana na mapie

dodanie

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

#1 dooomino

    Pomocny

  • Użytkownik

Reputacja: -1
Nowy

  • Postów:69
  • Imię:dominik
  • Lokalizacja:sanok
Offline

Napisano 23.12.2011 01:47

mam plugin tylko że w nim od razu znajduje sie to
  • [quote]
  • Z tym pluginem twój serwer będzie miał krajobraz zimowy
  • Na serwerze zacznie padac śnieg
  • Tam gdzie strzelasz będą leciały kulki lepione ze śniegu
  • Bomba będzie miała model choinki
  • Możesz dodac bałwana Dołączona grafika
    [/quote]
o to sma


#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <xs>
#define PLUGIN "Winter Events"
#define VERSION "1.0"
#define AUTHOR "Alka"
new const gSnowManModel[] = "models/frost_man.mdl";
new const gSnowManClassname[] = "snow_man";
new const gSnowBallModel[] = "sprites/bhit.spr";
new const gSnowBallClassname[] = "snow_ball";
new const gBombModel[] = "models/christmastree.mdl";
new gSnowBallLife = 5;
new gAccessFlag = ADMIN_BAN;
new const gGunsEvents[][] = {

"events/awp.sc",
"events/g3sg1.sc",
"events/ak47.sc",
"events/scout.sc",
"events/m249.sc",
"events/m4a1.sc",
"events/sg552.sc",
"events/aug.sc",
"events/sg550.sc",
"events/m3.sc",
"events/xm1014.sc",
"events/usp.sc",
"events/mac10.sc",
"events/ump45.sc",
"events/fiveseven.sc",
"events/p90.sc",
"events/deagle.sc",
"events/p228.sc",
"events/glock18.sc",
"events/mp5n.sc",
"events/tmp.sc",
"events/elite_left.sc",
"events/elite_right.sc",
"events/galil.sc",
"events/famas.sc"
}
new gEventsIndex[sizeof gGunsEvents];
public plugin_init() {

register_plugin(PLUGIN, VERSION, AUTHOR);

register_forward(FM_PlaybackEvent, "Fwd_PlaybackEvent");
register_forward(FM_Think, "Fwd_Think");
register_forward(FM_SetModel, "Fwd_SetModel");

register_clcmd("say !addsnowman", "cmdAddSnowman", -1);
register_clcmd("say !removesnowman", "cmdRemoveSnowman", -1);
register_clcmd("say !rotatesnowman", "cmdRotateSnowman", -1);
register_clcmd("say !saveorigins", "cmdSaveOrigins", -1);
}
public plugin_precache()
{
engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "env_snow"));

for(new i = 0 ; i < sizeof gGunsEvents ; i++)
{
gEventsIndex[i] = engfunc(EngFunc_PrecacheEvent, 1, gGunsEvents[i]);
}

precache_model(gSnowManModel);
precache_model(gSnowBallModel);
precache_model(gBombModel);
}
public plugin_cfg()
{
static sConfigsDir[64], sFile[64];
get_configsdir(sConfigsDir, sizeof sConfigsDir - 1);

static sMapName[32];
get_mapname(sMapName, sizeof sMapName - 1);

formatex(sFile, sizeof sFile - 1, "%s/%s_snowman_origins.cfg", sConfigsDir, sMapName);

if(!file_exists(sFile))
return 1;

static sFileOrigin[3][32], sFileAngles[3][32], iLine, iLength, sBuffer[256];
static sTemp1[128], sTemp2[128];
static Float:fOrigin[3], Float:fAngles[3];

while(read_file(sFile, iLine++, sBuffer, sizeof sBuffer - 1, iLength))
{
if((sBuffer[0]==';') || !iLength)
continue;

strtok(sBuffer, sTemp1, sizeof sTemp1 - 1, sTemp2, sizeof sTemp2 - 1, '|', 0);

parse(sTemp1, sFileOrigin[0], sizeof sFileOrigin[] - 1, sFileOrigin[1], sizeof sFileOrigin[] - 1, sFileOrigin[2], sizeof sFileOrigin[] - 1);

fOrigin[0] = str_to_float(sFileOrigin[0]);
fOrigin[1] = str_to_float(sFileOrigin[1]);
fOrigin[2] = str_to_float(sFileOrigin[2]);

parse(sTemp2, sFileAngles[0], sizeof sFileAngles[] - 1, sFileAngles[1], sizeof sFileAngles[] - 1, sFileAngles[2], sizeof sFileAngles[] - 1);

fAngles[0] = str_to_float(sFileAngles[0]);
fAngles[1] = str_to_float(sFileAngles[1]);
fAngles[2] = str_to_float(sFileAngles[2]);

static iEnt;
iEnt = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "info_target"));

if(!iEnt)
return 0;

engfunc(EngFunc_SetOrigin, iEnt, fOrigin);
set_pev(iEnt, pev_angles, fAngles);

static Float:fMaxs[3] = { 16.0, 16.0, 38.0 };
static Float:fMins[3] = { -16.0, -16.0, -38.0 };

engfunc(EngFunc_SetModel, iEnt, gSnowManModel);
set_pev(iEnt, pev_classname, gSnowManClassname);

dllfunc(DLLFunc_Spawn, iEnt);
set_pev(iEnt, pev_solid, SOLID_BBOX);
engfunc(EngFunc_SetSize, iEnt, fMins, fMaxs);
}
return 1;

}
public Fwd_PlaybackEvent(flags, id, eventindex)
{
for(new i = 0 ; i < sizeof gGunsEvents ; i++)
{
if(eventindex == gEventsIndex[i])
{
static Float:fAimOrigin[3];
fm_get_aimorigin(id, fAimOrigin);

if(engfunc(EngFunc_PointContents, fAimOrigin) != CONTENTS_SKY)
{
static iEnt;
iEnt = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "info_target"));

if(!iEnt)
return FMRES_IGNORED;

set_pev(iEnt, pev_solid, SOLID_NOT);
set_pev(iEnt, pev_movetype, MOVETYPE_NONE);
engfunc(EngFunc_SetModel, iEnt, gSnowBallModel);
set_pev(iEnt, pev_classname, gSnowBallClassname);

engfunc(EngFunc_SetOrigin, iEnt, fAimOrigin);

fm_set_rendering(iEnt, kRenderFxNoDissipation, 255, 255, 255, kRenderGlow, 255);
set_pev(iEnt, pev_flags, FL_ALWAYSTHINK);
set_pev(iEnt, pev_nextthink, get_gametime() + float(gSnowBallLife));

return FMRES_IGNORED;
}
}
}
return FMRES_IGNORED;
}
public Fwd_Think(Ent)
{
if(!pev_valid(Ent))
return FMRES_IGNORED;

static sClassName[32];
pev(Ent, pev_classname, sClassName, sizeof sClassName - 1);

if(!strcmp(sClassName, gSnowBallClassname, 1))
{
engfunc(EngFunc_RemoveEntity, Ent);
}

return FMRES_IGNORED;
}
public Fwd_SetModel(Ent, const szModel[])
{
if(!pev_valid(Ent))
return FMRES_IGNORED;

if(!strcmp(szModel, "models/w_c4.mdl"))
{
engfunc(EngFunc_SetModel, Ent, gBombModel);

return FMRES_SUPERCEDE;
}
return FMRES_IGNORED;
}
public cmdAddSnowman(id)
{
if(!access(id, gAccessFlag))
return 1;

if(!is_user_alive(id))
return 1;

static Float:fAimOrigin[3];
fm_get_aimorigin(id, fAimOrigin);

if((engfunc(EngFunc_PointContents, fAimOrigin) != CONTENTS_SKY) && (engfunc(EngFunc_PointContents, fAimOrigin) != CONTENTS_SOLID))
{
static iEnt;
iEnt = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "info_target"));

if(!iEnt)
return 0;

engfunc(EngFunc_SetOrigin, iEnt, fAimOrigin);

static Float:fMaxs[3] = { 16.0, 16.0, 38.0 };
static Float:fMins[3] = { -16.0, -16.0, -38.0 };

engfunc(EngFunc_SetModel, iEnt, gSnowManModel);
set_pev(iEnt, pev_classname, gSnowManClassname);

dllfunc(DLLFunc_Spawn, iEnt);
set_pev(iEnt, pev_solid, SOLID_BBOX);
engfunc(EngFunc_SetSize, iEnt, fMins, fMaxs);

client_print(id, print_chat, "Successfuly created a snowman!Now save the origins ^"!saveorigins^"");
}
else
client_print(id, print_chat, "Sorry, but that location is unavailable!");

return 0;
}
public cmdRemoveSnowman(id)
{
if(!access(id, gAccessFlag))
return 1;

if(!is_user_alive(id))
return 1;

static iEnt, iBody;
get_user_aiming(id, iEnt, iBody);

if(pev_valid(iEnt))
{
static sClassname[32];
pev(iEnt, pev_classname, sClassname, sizeof sClassname - 1);

if(!strcmp(sClassname, gSnowManClassname, 1))
{
engfunc(EngFunc_RemoveEntity, iEnt);

client_print(id, print_chat, "Successfuly, you removed a snowman!Now save the origins ^"!saveorigins^"");
}
else
client_print(id, print_chat, "Sorry, you must aim at an snowman to remove it!");
}
return 0;
}
public cmdSaveOrigins(id)
{
if(!access(id, gAccessFlag))
return 1;

if(!is_user_alive(id))
return 1;

static sConfigsDir[64], sFile[64];
get_configsdir(sConfigsDir, sizeof sConfigsDir - 1);

static sMapName[32];
get_mapname(sMapName, sizeof sMapName - 1);

formatex(sFile, sizeof sFile - 1, "%s/%s_snowman_origins.cfg", sConfigsDir, sMapName);

if(file_exists(sFile))
delete_file(sFile);

new iEnt = -1, Float:fEntOrigin[3], Float:fEntAngles[3], iCount;
static sBuffer[256];

while((iEnt = engfunc(EngFunc_FindEntityByString, iEnt, "classname", gSnowManClassname)))
{
pev(iEnt, pev_origin, fEntOrigin);
pev(iEnt, pev_angles, fEntAngles);

formatex(sBuffer, sizeof sBuffer - 1, "%f %f %f | %f %f %f", fEntOrigin[0], fEntOrigin[1], fEntOrigin[2], fEntAngles[0], fEntAngles[1], fEntAngles[2]);

write_file(sFile, sBuffer, -1);

iCount++;
}
client_print(id, print_chat, "Successfuly saved all snowman origins (%d) for map %s!", iCount,sMapName);

return 0;
}
public cmdRotateSnowman(id)
{
if(!access(id, gAccessFlag))
return 1;

if(!is_user_alive(id))
return 1;

static iEnt, iBody;
get_user_aiming(id, iEnt, iBody);

if(pev_valid(iEnt))
{
static sClassname[32];
pev(iEnt, pev_classname, sClassname, sizeof sClassname - 1);

if(!strcmp(sClassname, gSnowManClassname, 1))
{
static Float:fAngles[3];
pev(iEnt, pev_angles, fAngles);

fAngles[1] += 90.0;

set_pev(iEnt, pev_angles, fAngles);

client_print(id, print_chat, "Successfuly, you rotated a snowman!Now save the origins ^"!saveorigins^"");
}
else
client_print(id, print_chat, "Sorry, you must aim at an snowman to rotate it!");
}
return 0;

}
public client_connect(id)
client_cmd(id, "cl_weather 1");
stock fm_get_aimorigin(index, Float:origin[3])
{
new Float:start[3], Float:view_ofs[3];
pev(index, pev_origin, start);
pev(index, pev_view_ofs, view_ofs);
xs_vec_add(start, view_ofs, start);

new Float:dest[3];
pev(index, pev_v_angle, dest);
engfunc(EngFunc_MakeVectors, dest);
global_get(glb_v_forward, dest);
xs_vec_mul_scalar(dest, 9999.0, dest);
xs_vec_add(start, dest, dest);

engfunc(EngFunc_TraceLine, start, dest, 0, index, 0);
get_tr2(0, TR_vecEndPos, origin);

return 1;
}
stock fm_set_rendering(entity, fx = kRenderFxNone, r = 255, g = 255, b = 255, render = kRenderNormal, amount = 16)
{
static Float:rendercolor[3];
rendercolor[0] = float(r);
rendercolor[1] = float(g);
rendercolor[2] = float(B);

set_pev(entity, pev_renderfx, fx)
set_pev(entity, pev_rendercolor, rendercolor);
set_pev(entity, pev_rendermode, render);
set_pev(entity, pev_renderamt, float(amount));

return 1;
}






może mi ktoś wyłączyć wszystko oprócz dodania bałwana na mape?
  • +
  • -
  • 0

#2 ExTaza?!

    Wszechobecny

  • Użytkownik

Reputacja: 106
Zaawansowany

  • Postów:424
  • GG:
  • Imię:Piotr
  • Lokalizacja:Leszno
Offline

Napisano 23.12.2011 02:24

Proszę :)

Załączone pliki


  • +
  • -
  • 0

http://www.Cs-Kurnik.pl - Zapraszam!

 

b_350_20_FFAD41_E98100_000000_591F11.png IP: awp.cs-kurnik.pl:27017 / 155.133.43.190:27017

 

b_350_20_FFAD41_E98100_000000_591F11.png IP: ts3.cs-kurnik.pl - Darmowe kanały                     


#3 dooomino

    Pomocny

  • Autor tematu
  • Użytkownik

Reputacja: -1
Nowy

  • Postów:69
  • Imię:dominik
  • Lokalizacja:sanok
Offline

Napisano 23.12.2011 10:02

wszystko ladnie dziala ^^ mozesz jeszcze ten sam plugin przerobic zeby mozna bylo dodac prezent na mape? : D
  • +
  • -
  • 0

#4 ExTaza?!

    Wszechobecny

  • Użytkownik

Reputacja: 106
Zaawansowany

  • Postów:424
  • GG:
  • Imię:Piotr
  • Lokalizacja:Leszno
Offline

Napisano 23.12.2011 16:38

Jak same prezenty to wystarczy jak zmienisz nazwy modeli w tym co Ci dałem np. na "prezent.mdl"
  • +
  • -
  • 0

http://www.Cs-Kurnik.pl - Zapraszam!

 

b_350_20_FFAD41_E98100_000000_591F11.png IP: awp.cs-kurnik.pl:27017 / 155.133.43.190:27017

 

b_350_20_FFAD41_E98100_000000_591F11.png IP: ts3.cs-kurnik.pl - Darmowe kanały                     


#5 Nenczoks

    Banned

  • Zbanowany

Reputacja: 50
Pomocny

  • Postów:358
  • Lokalizacja:Warszawa
Offline

Napisano 23.12.2011 16:49

Skorzystaj z tego pluginu: http://amxx.pl/topic...7-model-placer/

#6 ExTaza?!

    Wszechobecny

  • Użytkownik

Reputacja: 106
Zaawansowany

  • Postów:424
  • GG:
  • Imię:Piotr
  • Lokalizacja:Leszno
Offline

Napisano 23.12.2011 17:41

Poczytaj sam to :) Edytujesz sam jeden plik i możesz prezenty dodawac :)
  • +
  • -
  • 0

http://www.Cs-Kurnik.pl - Zapraszam!

 

b_350_20_FFAD41_E98100_000000_591F11.png IP: awp.cs-kurnik.pl:27017 / 155.133.43.190:27017

 

b_350_20_FFAD41_E98100_000000_591F11.png IP: ts3.cs-kurnik.pl - Darmowe kanały                     






Również z jednym lub większą ilością słów kluczowych: dodanie

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

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