/
geneffectex.hpp
87 lines (63 loc) · 3.56 KB
/
geneffectex.hpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
// This file is distributed under a BSD license. See LICENSE.txt for details.
#ifndef __GENEFFECTEX_HPP__
#define __GENEFFECTEX_HPP__
#include "_types.hpp"
#include "_start.hpp"
#include "kdoc.hpp"
#include "geneffect.hpp"
/****************************************************************************/
KObject * __stdcall Init_Effect_Chaos1(class GenMaterial *mtrl,sF323 a,sF323 b,sF323 c,sInt flags,sInt effect,sInt seed,sInt maxcount);
void __stdcall Exec_Effect_Chaos1(KOp *op,KEnvironment *kenv,sF323 a,sF323 b,sF323 c,sInt flags,sInt effect,sInt seed,sInt maxcount);
KObject * __stdcall Init_Effect_Tourque(class GenMaterial *mtrl,class GenMesh *mesh,sInt Seed,sInt MaxCount,sInt Rate,sInt Flags,sF32 SizeF,sF32 SizeS,sF32 Speed,sF32 Damp,sF323 Pos,sF323 Range,sInt Slot);
void __stdcall Exec_Effect_Tourque(KOp *op,KEnvironment *kenv,sInt Seed,sInt MaxCount,sInt Rate,sInt Flags,sF32 SizeF,sF32 SizeS,sF32 Speed,sF32 Damp,sF323 Pos,sF323 Range,sInt Slot);
struct StreamPara
{
sInt Seed;
sInt Count;
sInt Rate;
sInt Flags;
sInt Slot;
sF32 SizeF,SizeS;
sF32 Speed;
sVector Pos[4];
sF32 StuffX;
sF32 StuffY;
sF32 StuffZ;
sF32 StuffW;
sVector Light[2];
};
KObject * __stdcall Init_Effect_Stream(class GenMaterial *mtrl,StreamPara para);
void __stdcall Exec_Effect_Stream(KOp *op,KEnvironment *kenv,StreamPara para);
/****************************************************************************/
KObject * __stdcall Init_Effect_BP06Spirit(class GenMaterial *mtrl,class GenMaterial *mtrl2,sF323 pos,sF32 radius,sF32 corerad,sF32 perlfreq,sF32 perlamp,sF32 perlanim,sU32 coli,sU32 colo,sU32 colc,sInt partcount,sF32 partrad,sF32 partspeed,sF32 partthick,sF32 partanim,sInt segments);
void __stdcall Exec_Effect_BP06Spirit(KOp *op,KEnvironment *kenv,sF323 pos,sF32 radius,sF32 corerad,sF32 perlfreq,sF32 perlamp,sF32 perlanim,sU32 coli,sU32 colo,sU32 colc,sInt partcount,sF32 partrad,sF32 partspeed,sF32 partthick,sF32 partanim,sInt segments);
KObject * __stdcall Init_Effect_BP06Jungle(class GenMaterial *mtrl,sInt segments,sInt slices,sF32 thickness,sF32 thickscale,sF32 length,sF32 lenscale,sF32 sangle,sF32 carfreq,sF32 caramp,sF32 modfreq,sF32 modamp,sF32 modphase);
void __stdcall Exec_Effect_BP06Jungle(KOp *op,KEnvironment *kenv,sInt segments,sInt slices,sF32 thickness,sF32 thickscale,sF32 length,sF32 lenscale,sF32 sangle,sF32 carfreq,sF32 caramp,sF32 modfreq,sF32 modamp,sF32 modphase);
/****************************************************************************/
KObject * __stdcall Init_Effect_GridStuff(class GenMaterial *mtrl,sInt xRes,sInt yRes,sU32 col1,sU32 col2);
void __stdcall Exec_Effect_GridStuff(KOp *op,KEnvironment *kenv,sInt xRes,sInt yRes,sU32 col1,sU32 col2);
/****************************************************************************/
class GenImageList : public KObject
{
struct Image
{
sInt TexHandle;
sInt XRes;
sInt YRes;
};
sArray<Image> Images;
public:
GenImageList();
~GenImageList();
void Copy(KObject *o);
void Clear();
// AddImage transfers ownership of handle to *this.
void AddImage(sInt handle,sInt xRes,sInt yRes);
void Append(const GenImageList& other);
sInt GetImage(sInt index,sInt *xRes=0,sInt *yRes=0) const;
};
GenImageList * __stdcall Init_Misc_ImageList(KOp *op);
KObject * __stdcall Init_Effect_ImageJukebox(GenImageList *list,sInt pass,sInt index,sF32 whiten,sF32 amplify,sF32 fade);
void __stdcall Exec_Effect_ImageJukebox(KOp *op,KEnvironment *kenv,sInt pass,sInt index,sF32 whiten,sF32 amplify,sF32 fade);
/****************************************************************************/
#endif