nuclear@3: #ifndef RNDVAL_H_ nuclear@3: #define RNDVAL_H_ nuclear@3: nuclear@3: #include nuclear@3: #include nuclear@3: #include "anm_track3.h" nuclear@3: nuclear@3: struct psys_rnd { nuclear@3: float value, range; nuclear@3: }; nuclear@3: nuclear@3: struct psys_rnd3 { nuclear@3: vec3_t value, range; nuclear@3: }; nuclear@3: nuclear@3: struct psys_anm_rnd { nuclear@3: struct anm_track value, range; nuclear@3: /* current cache */ nuclear@3: anm_time_t cur_tm; nuclear@3: struct psys_rnd cur; nuclear@3: }; nuclear@3: nuclear@3: struct psys_anm_rnd3 { nuclear@3: struct anm_track3 value, range; nuclear@3: /* current cache */ nuclear@3: anm_time_t cur_tm; nuclear@3: struct psys_rnd3 cur; nuclear@3: }; nuclear@3: nuclear@3: nuclear@3: int psys_init_anm_rnd(struct psys_anm_rnd *v); nuclear@3: void psys_destroy_anm_rnd(struct psys_anm_rnd *v); nuclear@3: int psys_init_anm_rnd3(struct psys_anm_rnd3 *v); nuclear@3: void psys_destroy_anm_rnd3(struct psys_anm_rnd3 *v); nuclear@3: nuclear@3: float psys_eval_rnd(struct psys_rnd *r); nuclear@3: vec3_t psys_eval_rnd3(struct psys_rnd3 *r); nuclear@3: nuclear@3: float psys_eval_anm_rnd(struct psys_anm_rnd *r, anm_time_t tm); nuclear@3: vec3_t psys_eval_anm_rnd3(struct psys_anm_rnd3 *r, anm_time_t tm); nuclear@3: nuclear@3: nuclear@3: #endif /* RNDVAL_H_ */