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

Problem z klasa Mroczny Mag


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

#1 Exhidi

    Zaawansowany

  • Zbanowany

Reputacja: -5
Nowy

  • Postów:80
  • Imię:tomek
  • Lokalizacja:polska
Offline

Napisano 27.07.2012 18:20

Witam mam problem z klasa poniewaz powinna miec ona teleport co 25 sec a moze caly czas . proszę o poprawienie bledu i o podanie kodu.

oto kod sma:

#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <engine>
#include <hamsandwich>
#include <fakemeta>

#define BASE_TASK 5123
new const nazwa[] = "Mroczny Mag";
new const opis[] = "ma możliwosc teleportacji co 25 sekund";
new const bronie = (1<<CSW_M249)|(1<<CSW_AK47);
new const zdrowie = 30;
new const kondycja = 10;
new const inteligencja = 0;
new const wytrzymalosc = 0;

new bool:Teleportacja[33];


public plugin_init()
{
register_plugin(nazwa, "1.0", "amxx.pl");

cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
}

public cod_class_enabled(id)
Teleportacja[id] = true;

public cod_class_disabled(id)
Teleportacja[id] = false;

public cod_class_skill_used(id)
{
if(!Teleportacja[id])
return PLUGIN_CONTINUE;

Teleportacja[id] = true;
UTIL_Teleport(id, 300+15*cod_get_user_intelligence(id))
set_task(25.0, "ponownieTeleportuj", BASE_TASK+id);

return PLUGIN_HANDLED;
}

public ponownieTeleportuj(id2)
{
new id = id2 - BASE_TASK;

if(is_user_connected(id) && !Teleportacja[id])
return PLUGIN_HANDLED;

Teleportacja[id] = true;

return PLUGIN_HANDLED;
}

public UTIL_Teleport(id,distance) // with DB MOD
{
Set_Origin_Forward(id,distance)

new origin[3]
get_user_origin(id,origin)

//Particle burst ie. teleport effect
message_begin(MSG_BROADCAST ,SVC_TEMPENTITY) //message begin
write_byte(TE_PARTICLEBURST )
write_coord(origin[0]) // origin
write_coord(origin[1]) // origin
write_coord(origin[2]) // origin
write_short(20) // radius
write_byte(1) // particle color
write_byte(4) // duration * 10 will be randomized a bit
message_end()


}

stock Set_Origin_Forward(id, distance) // WITH DB OMD
{
new Float:origin[3]
new Float:angles[3]
new Float:teleport[3]
new Float:heightplus = 10.0
new Float:playerheight = 64.0
new bool:recalculate = false
new bool:foundheight = false
pev(id,pev_origin,origin)
pev(id,pev_angles,angles)

teleport[0] = origin[0] + distance * floatcos(angles[1],degrees) * floatabs(floatcos(angles[0],degrees));
teleport[1] = origin[1] + distance * floatsin(angles[1],degrees) * floatabs(floatcos(angles[0],degrees));
teleport[2] = origin[2]+heightplus

while (!Can_Trace_Line_Origin(origin,teleport) || Is_Point_Stuck(teleport,48.0))
{
if (distance < 10)
break;

//First see if we can raise the height to MAX playerheight, if we can, it's a hill and we can teleport there
for (new i=1; i < playerheight+20.0; i++)
{
teleport[2]+=i
if (Can_Trace_Line_Origin(origin,teleport) && !Is_Point_Stuck(teleport,48.0))
{
foundheight = true
heightplus += i
break
}

teleport[2]-=i
}

if (foundheight)
break

recalculate = true
distance-=10
teleport[0] = origin[0] + (distance+32) * floatcos(angles[1],degrees) * floatabs(floatcos(angles[0],degrees));
teleport[1] = origin[1] + (distance+32) * floatsin(angles[1],degrees) * floatabs(floatcos(angles[0],degrees));
teleport[2] = origin[2]+heightplus
}

if (!recalculate)
{
set_pev(id,pev_origin,teleport)
return PLUGIN_CONTINUE
}

teleport[0] = origin[0] + distance * floatcos(angles[1],degrees) * floatabs(floatcos(angles[0],degrees));
teleport[1] = origin[1] + distance * floatsin(angles[1],degrees) * floatabs(floatcos(angles[0],degrees));
teleport[2] = origin[2]+heightplus
set_pev(id,pev_origin,teleport)

return PLUGIN_CONTINUE
}

stock bool:Can_Trace_Line_Origin(Float:origin1[3], Float:origin2[3]) // WITH DB MOD
{
new Float:Origin_Return[3]
new Float:temp1[3]
new Float:temp2[3]

temp1[0] = origin1[0]
temp1[1] = origin1[1]
temp1[2] = origin1[2]-30

temp2[0] = origin2[0]
temp2[1] = origin2[1]
temp2[2] = origin2[2]-30

trace_line(-1, temp1, temp2, Origin_Return)

if (get_distance_f(Origin_Return,temp2) < 1.0)
return true

return false
}

stock bool:Is_Point_Stuck(Float:Origin[3], Float:hullsize) // WITH DB MOD
{
new Float:temp[3]
new Float:iterator = hullsize/3

temp[2] = Origin[2]

for (new Float:i=Origin[0]-hullsize; i < Origin[0]+hullsize; i+=iterator)
{
for (new Float:j=Origin[1]-hullsize; j < Origin[1]+hullsize; j+=iterator)
{
//72 mod 6 = 0
for (new Float:k=Origin[2]-72.0; k < Origin[2]+72.0; k+=6)
{
temp[0] = i
temp[1] = j
temp[2] = k

if (point_contents(temp) != -1)
return true
}
}
}

return false
}

(31.07.2012 21:16):
Tytuł edytowany

>Zapraszam Serdecznie na serwer z modem Call Of Duty MW=3= [200LVL] Unikat by. Exhidi <

Dołączona grafika

IP:193.33.176.167:27015

Dołączona grafika

IP:31.186.84.126:27018

> Zapraszamy na White-Frags.pl ! Siec serwerów gier multiplayer <


#2 Lokiec :x

    Pomocny

  • Zbanowany

Reputacja: 11
Początkujący

  • Postów:60
  • Imię:Kamil
  • Lokalizacja:Zg
Offline

Napisano 27.07.2012 18:33

Trzymaj tylko skompiluj sb na http://amxx.pl/kompilator

Załączony plik  mrocznymag.sma   1,96 KB  30 Ilość pobrań
  mrocznymag.amxx

Trzymaj tylko skompiluj sb na http://amxx.pl/kompilator

Załączony plik  mrocznymag.sma   1,96 KB  30 Ilość pobrań
  mrocznymag.amxx
Zapraszam do mnie na CoD MoD'a rekrutacja na ADMINA ON !!!!

Dołączona grafika

#3 Exhidi

    Zaawansowany

  • Autor tematu
  • Zbanowany

Reputacja: -5
Nowy

  • Postów:80
  • Imię:tomek
  • Lokalizacja:polska
Offline

Napisano 27.07.2012 19:08

Nadal to samo

>Zapraszam Serdecznie na serwer z modem Call Of Duty MW=3= [200LVL] Unikat by. Exhidi <

Dołączona grafika

IP:193.33.176.167:27015

Dołączona grafika

IP:31.186.84.126:27018

> Zapraszamy na White-Frags.pl ! Siec serwerów gier multiplayer <


#4 Xanzi

    Początkujący

  • Użytkownik

Reputacja: 8
Nowy

  • Postów:13
  • Lokalizacja:Wodzislaw
Offline

Napisano 27.07.2012 19:47

sprawdź z tym :)

Załączone pliki


  • +
  • -
  • 0

#5 Exhidi

    Zaawansowany

  • Autor tematu
  • Zbanowany

Reputacja: -5
Nowy

  • Postów:80
  • Imię:tomek
  • Lokalizacja:polska
Offline

Napisano 02.08.2012 15:33

Już problem naprawiłem samemu. Dziękuję za pomoc.

Temat do zamknięcia

>Zapraszam Serdecznie na serwer z modem Call Of Duty MW=3= [200LVL] Unikat by. Exhidi <

Dołączona grafika

IP:193.33.176.167:27015

Dołączona grafika

IP:31.186.84.126:27018

> Zapraszamy na White-Frags.pl ! Siec serwerów gier multiplayer <


#6 Gość_21977_*

  • Gość

Reputacja: 0

Offline

Napisano 02.08.2012 15:46

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Temat zamknięty na prośbę użytkownika.


Z pozdrowieniami,
Zespół AMXX.PL




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

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