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

[ROZWIĄZANE] Spadające prezenty by REX, a gift_spawn



Najlepsza odpowiedź GwynBleidD, 16.07.2013 14:58

Musisz edytować plugin do którego należy ten natyw. Do natywu rejestrującego gift dodajesz możliwość podania numeru modelu (-1 dla losowego polecam zostawić), następnie globalna tablica dla przechowywania numeru modelu dla każdego z prezentów, a na końcu linia 369:

    engfunc(EngFunc_SetModel, ent2, gszModels[ random(sizeof gszModels) ]);

 

Zamieniasz na:

 

   
    new giftId = pev(ent, pev_iuser2);
    if(giGiftModel[giftId]==GIFTMODEL_RANDOM || giGiftModel[giftId] >= sizeof gszModels)
        engfunc(EngFunc_SetModel, ent2, gszModels[ random(sizeof gszModels) ]);
    else
        engfunc(EngFunc_SetModel, ent2, gszModels[ giGiftModel[giftId ]);

 

Jakbyś sobie nie poradził z tym, czego Ci na tacy nie dałem:

Spoiler
Przejdź do postu


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

#1 Kewin. (ZeZ)

    Wszechobecny

  • Użytkownik

Reputacja: 130
Zaawansowany

  • Postów:465
  • GG:
  • Steam:steam
  • Imię:Kewin
  • Lokalizacja:Zgorzelec
Offline

Napisano 12.07.2013 17:36

Moje pytanie jest takie :), mamy natyw taki o:
 * Utworz na mapie prezent
 *	@param	gift			numer nagrody lub GIFT_RANDOM gdy ma byc losowo
 *	@param 	Float:fOrigin[3]	Punkt na mapie gdzie ma byc stworzona paczka, 
 *					mozna nie podawac, wtedy wybrane zostanie losowe miejsce
native gift_spawn( Gift:gift = GIFT_RANDOM, Float:... );
W pluginie uzywany jest tak:
gift_spawn()
A wlasnie chcialem zrobic, aby dane nagrody wypadaly tylko z jednego modelu prezentu i dalem:
gift_spawn(1)
Czyli w tym pluginie respi sie tylko model pierwszy z new const gszModels[][32]
Tak , bo chce zrobic dla kazdego innego modelu inne nagrody :)

Tylko, ze gift_spawn(1) być nie moze, co tam musi byc, aby respil sie tylko ten pierwszy model?
*	@param	gift			numer nagrody lub GIFT_RANDOM gdy ma byc losowo

Jednak chyba ten natyw jest do ustawiania nagrody w prezencie, ktory wypadnie.
A wiec trzebato jakos inaczej zrobic, bo jak prezent spada z nieba, to spada losowy z tych ktore mamy w gszModels.

I teraz trzeba by bylo jakos zrobic, aby w danym modelu prezentu byly tylko te nagordy jakie chce.
Czyli jesli jest gszModels[0] (0 bo tablice chyba liczone sa od 0?) to ma nagrody inne niz, gdyby mial powiedzmy gszModels[1].

Tylko nie wiem jak to zrobic...
A mozna by bylo zrobic, ze jesli wylosowal model pierwszy to czyta plik z configs/prezenty1, a jak z drugiego modelu to z configs/prezenty2, i tak dalej?
Czy jest latwiejszy sposob(zapewne)
  • +
  • -
  • 0

"Wiem, że nic nie wiem!"

...Nie jestem OWIECZKĄ!...

 

Pomagam przy DIABLOMODCORE i CODMOD

 

Pisz konkretnie, inaczej nie odpisze!


#2 GwynBleidD

    Godlike

  • Przyjaciel

Reputacja: 1 869
Godlike

  • Postów:3 066
  • Steam:steam
  • Lokalizacja:Przemyśl
Offline

Napisano 16.07.2013 14:58   Najlepsza odpowiedź

Musisz edytować plugin do którego należy ten natyw. Do natywu rejestrującego gift dodajesz możliwość podania numeru modelu (-1 dla losowego polecam zostawić), następnie globalna tablica dla przechowywania numeru modelu dla każdego z prezentów, a na końcu linia 369:

    engfunc(EngFunc_SetModel, ent2, gszModels[ random(sizeof gszModels) ]);

 

Zamieniasz na:

 

   
    new giftId = pev(ent, pev_iuser2);
    if(giGiftModel[giftId]==GIFTMODEL_RANDOM || giGiftModel[giftId] >= sizeof gszModels)
        engfunc(EngFunc_SetModel, ent2, gszModels[ random(sizeof gszModels) ]);
    else
        engfunc(EngFunc_SetModel, ent2, gszModels[ giGiftModel[giftId ]);

 

Jakbyś sobie nie poradził z tym, czego Ci na tacy nie dałem:

Spoiler

  • +
  • -
  • 1

NIE pomagam na PW. Nie trudź się, na zlecenia nie odpiszę... Od pomagania jest forum.
NIE zaglądam w tematy wysłane na PW. Jeśli są na forum to prędzej czy później je przeczytam. Jeśli mam co w nich odpisać, to odpiszę.
 
1988650.png?theme=dark


#3 Kewin. (ZeZ)

    Wszechobecny

  • Autor tematu
  • Użytkownik

Reputacja: 130
Zaawansowany

  • Postów:465
  • GG:
  • Steam:steam
  • Imię:Kewin
  • Lokalizacja:Zgorzelec
Offline

Napisano 17.07.2013 22:00

Dzięki :)

Pozniej przetestuje, ale raczej bedzie dzialac  .


  • +
  • -
  • 0

"Wiem, że nic nie wiem!"

...Nie jestem OWIECZKĄ!...

 

Pomagam przy DIABLOMODCORE i CODMOD

 

Pisz konkretnie, inaczej nie odpisze!


#4 Kewin. (ZeZ)

    Wszechobecny

  • Autor tematu
  • Użytkownik

Reputacja: 130
Zaawansowany

  • Postów:465
  • GG:
  • Steam:steam
  • Imię:Kewin
  • Lokalizacja:Zgorzelec
Offline

Napisano 17.07.2013 22:40

[edit]

 

jak zwykle teraz tego nie sprawdze, ale kilka poprawek i sie skompilowalo poprawnie :)

 


  • +
  • -
  • 0

"Wiem, że nic nie wiem!"

...Nie jestem OWIECZKĄ!...

 

Pomagam przy DIABLOMODCORE i CODMOD

 

Pisz konkretnie, inaczej nie odpisze!






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

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

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