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

Model nad ziemią + remove_entity


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

#1 Willson

    Pomocny

  • Użytkownik

Reputacja: 1
Nowy

  • Postów:74
  • Lokalizacja:Białystok
Offline

Napisano 13.06.2012 20:52

new Float:vOrigin[3]
new fEntity
entity_get_vector(id,EV_VEC_origin, vOrigin)
fEntity = create_entity("info_target")
entity_set_model(fEntity, "models/special.mdl")
entity_set_origin(fEntity, vOrigin)
entity_set_string(fEntity,EV_SZ_classname,"special1")
entity_set_int(fEntity, EV_INT_solid, SOLID_BBOX)
entity_set_int(fEntity,EV_INT_movetype,5)
entity_set_edict(fEntity,EV_ENT_owner,id)
new Float:fl_iNewVelocity[3]
VelocityByAim(id, 500, fl_iNewVelocity)
entity_set_vector(fEntity,
EV_VEC_velocity, fl_iNewVelocity)



Pyt nr 1. Czasami model wybucha pod moimi nogami.Nie da sie lekko podwyższyć pojawienie się tego modelu?
Pyt nr 2. Czy da się zrobić tak,że po 10 sekundach od pojawienia się tego modelu,jeśli nie będzie zniszczony automatycznie(czyli jak dotknie gracza),to model sam zniknie?
  • +
  • -
  • 0

#2 Gość_21977_*

  • Gość

Reputacja: 0

Offline

Napisano 15.06.2012 22:52

1. Możesz zmienić drugi (licząc od zera) wymiar vOrigin, tj. przykładowo vOrigin[2]+=30.0;
2. Ustawiasz taska (set_task(10.0,"sprawdz");) Pierwszy parametr (10.0) oznacza, że za 10 sekund zostanie wywołana funkcja sprawdz() (drugi parametr: patrz dokumentacja)
W funkcji sprawdz(), o ile istnieje dany byt, to usuwasz go.

#3 Willson

    Pomocny

  • Autor tematu
  • Użytkownik

Reputacja: 1
Nowy

  • Postów:74
  • Lokalizacja:Białystok
Offline

Napisano 16.06.2012 14:44

W funkcji sprawdz(), o ile istnieje dany byt, to usuwasz go.

Podasz gotowy kod?
  • +
  • -
  • 0

#4 dasiek

    Nie wiem, nie znam się, nie orientuję się, zarobiony jestem.

  • Junior Admin

Reputacja: 2 077
Godlike

  • Postów:5 706
  • Imię:Adaś
  • Lokalizacja:No teraz trochę dalej od WWy
Offline

Napisano 16.06.2012 15:02

public TworzeByt(id)
{
    new Float:vOrigin[3]
    new fEntity
    entity_get_vector(id,EV_VEC_origin, vOrigin)
    fEntity = create_entity("info_target")
    entity_set_model(fEntity, "models/special.mdl")
    entity_set_origin(fEntity, vOrigin)
    entity_set_string(fEntity,EV_SZ_classname,"special1")
    entity_set_int(fEntity, EV_INT_solid, SOLID_BBOX)
    entity_set_int(fEntity,EV_INT_movetype,5)
    entity_set_edict(fEntity,EV_ENT_owner,id)
    new Float:fl_iNewVelocity[3]
    VelocityByAim(id, 500, fl_iNewVelocity)
    entity_set_vector(fEntity,
    EV_VEC_velocity, fl_iNewVelocity)
    set_task(10.0,"Bum",fEntity+9929)
}
public Bum(id)
{
    id-=9929;
    
    // Wybucha?
}

Ja bym to tak zrobił. i jeszcze dodać w Funkcji Dotyku tego bytu (nie Bum) coś takiego

remove_task(ent+9929)

  • +
  • -
  • 0

#5 Willson

    Pomocny

  • Autor tematu
  • Użytkownik

Reputacja: 1
Nowy

  • Postów:74
  • Lokalizacja:Białystok
Offline

Napisano 17.06.2012 08:12


public bum(id)
{
id-=9929;
if(equal(szClassName, "special1"))
{
// co tutaj?
}
}

  • +
  • -
  • 0

#6 dasiek

    Nie wiem, nie znam się, nie orientuję się, zarobiony jestem.

  • Junior Admin

Reputacja: 2 077
Godlike

  • Postów:5 706
  • Imię:Adaś
  • Lokalizacja:No teraz trochę dalej od WWy
Offline

Napisano 17.06.2012 09:32

Ogólnie powinieneś sprawdzić czy ent jeszcze jest. dodać kod wybuchu + usuwanie enta

Użytkownik CheQ edytował ten post 17.06.2012 09:45

  • +
  • -
  • 0

#7 Willson

    Pomocny

  • Autor tematu
  • Użytkownik

Reputacja: 1
Nowy

  • Postów:74
  • Lokalizacja:Białystok
Offline

Napisano 17.06.2012 20:48

Ogólnie powinieneś sprawdzić czy ent jeszcze jest. dodać kod wybuchu + usuwanie enta

to nie mozesz podac? -.- ja sie na tym nie znam..

public bum(id)
{
id-=9929;
if(equal(szClassName, "special1"))
{
new idEnt = find_ent_by_class(-1, "special1")
while(idEnt > 0)
{
// co tutaj?
}
}
}

Użytkownik Willson edytował ten post 17.06.2012 20:50

  • +
  • -
  • 0




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

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