System [C++]WaveSystem

Toki
Ciao, oggi rilascio questo "system" fatto da me.
Mi ha incuriosito perché in una pagina di un "dev" lo vendevano a 150 euro. L'ho fatto in poco tempo, ma funziona.

Se posso darti un consiglio per evitare quell'ammasso di vnum su vnum, ti consiglio di richiamare la funzione attraverso il bRank del Mob_proto (su ActorInstance) con MOB_RANK_BOSS.
In questo modo crei soltanto 2 if; uno ==MOB_RANK_BOSS ed uno >MOB_RANK_BOSS (e non hai lo sbatti di aggiungere ogni boss nuovo che implementi in DB ma viene settato automaticamente.)
 
Toki


Se posso darti un consiglio per evitare quell'ammasso di vnum su vnum, ti consiglio di richiamare la funzione attraverso il bRank del Mob_proto (su ActorInstance) con MOB_RANK_BOSS.
In questo modo crei soltanto 2 if; uno ==MOB_RANK_BOSS ed uno >MOB_RANK_BOSS (e non hai lo sbatti di aggiungere ogni boss nuovo che implementi in DB ma viene settato automaticamente.)
Quanti boss vuoi che abbia un server di metin? 15?
Se un boss è grande quanto un personaggio, ha senso che quando cammina ti terremota lo schermo? farebbe più scossa un obeso
su un Capobanda oscuro, che è più secco di un war?
Io lo avrei fatto esattamente così, senza cercare alcun pelo nell'uovo, se devi metterti a fare i check di quali boss non devono scassarti la visuale fai prima così (mio pensiero personale)
 
Ultima modifica:
Quanti boss vuoi che abbia un server di metin? 15?
Se un boss è grande quanto un personaggio, ha senso che quando cammina ti terremota lo schermo? farebbe più scossa un obeso
su un Capobanda oscuro, che è più secco di un war?
Io lo avrei fatto esattamente così, senza cercare alcun pelo nell'uovo, se devi metterti a fare i check di quali boss non devono scassarti la visuale fai prima così (mio pensiero personale)
Grazie a Dio ci sono developer come te e Toki che fanno le cose usando la testa e non solo il codice, altrimenti noi GF perderemmo ore ogni volta a fixare tutte le puttanate che ficcano in ogni rigo
 
Mhh sinceramente a livello pratico trovo leggermente meglio la versione tramite rank, calcolando che un server normale Middle (così facciamo felici tutti) partendo dal Capitano Brutale hai 20 boss, senza contare mappe nuovo continente che arriveremo circa a 35 boss aggiungici i miniboss (villaggio1 ad esempio), boss dei dungeon e quelli evento sicuramente è più veloce mettendo il rank.
Poi sono scelte, di gestione queste ognuno è libero di fare come va meglio per il proprio lavoro.
Comunque certo la questione della grandezza confrontata al tremolio dello schermo è interessante come cosa ma calcolando che su metin la fisica esiste?... si può stare tentare di creare un esperienza migliore dov'è possibile.
Quanti boss vuoi che abbia un server di metin? 15?
Se un boss è grande quanto un personaggio, ha senso che quando cammina ti terremota lo schermo? farebbe più scossa un obeso
su un Capobanda oscuro, che è più secco di un war?
Io lo avrei fatto esattamente così, senza cercare alcun pelo nell'uovo, se devi metterti a fare i check di quali boss non devono scassarti la visuale fai prima così (mio pensiero personale)

Ps. Ringrazio @Toki.San per il rilascio del system, ottimo lavoro come sempre.
 
Mhh sinceramente a livello pratico trovo leggermente meglio la versione tramite rank, calcolando che un server normale Middle (così facciamo felici tutti) partendo dal Capitano Brutale hai 20 boss, senza contare mappe nuovo continente che arriveremo circa a 35 boss aggiungici i miniboss (villaggio1 ad esempio), boss dei dungeon e quelli evento sicuramente è più veloce mettendo il rank.
Poi sono scelte, di gestione queste ognuno è libero di fare come va meglio per il proprio lavoro.
Comunque certo la questione della grandezza confrontata al tremolio dello schermo è interessante come cosa ma calcolando che su metin la fisica esiste?... si può stare tentare di creare un esperienza migliore dov'è possibile.


Ps. Ringrazio @Toki.San per il rilascio del system, ottimo lavoro come sempre.
Oppure invece di usare il vnum o il rank, aggiungi un nuovo campo con il value della "wave" e invece di if(GetRace() == x) potresti semplicemente fare:
C++:
if (GetWavingEffect() > 0) //GetWavingEffect() -> nome della funzione che prende il value del waving effect
{
    if (uNextMot == CRaceMotionData::NAME_RUN)
    {
        SetScreenEffectWaving(50.00f, GetWavingEffect());
    }
    else
    {
        SetScreenEffectWavingEnd();
    }
}
Ovviamente non ne vale la pena se lo si vuole utilizzare su un numero di boss che si contano sulle dita di una mano.