|
6 | 6 | #include <types.h> |
7 | 7 | #include <rwcore.h> |
8 | 8 |
|
9 | | -extern _tagLightningAdd gLightningTweakAddInfo; |
10 | | -extern zLightning* sLightning[0x30]; |
11 | | -extern RwRaster* sLightningRaster; |
12 | | -extern xVec3 sTweakStart; |
13 | | -extern xVec3 sTweakEnd; |
14 | | - |
15 | | -// Taken from zLightning.s |
16 | | -// Defining these here makes the stringBase0 offsets match in the later functions. |
17 | | -static char* str1 = "Line"; |
18 | | -static char* str2 = "Rotating"; |
19 | | -static char* str3 = "Zeus"; |
20 | | -static char* str4 = "Func"; |
21 | | -static char* str5 = "Lightning|\x01Type Info"; |
22 | | -static char* str6 = "Lightning|\x01Type Info|Setup Degrees"; |
23 | | -static char* str7 = "Lightning|\x01Type Info|Move Degrees"; |
24 | | -static char* str8 = "Lightning|\x01Type Info|Normal Offset"; |
25 | | -static char* str9 = "Lightning|\x01Type Info|Back Offset"; |
26 | | -static char* str10 = "Lightning|\x01Type Info|Side Offset"; |
27 | | -static char* str11 = "PAREMIT_EG_SPARK"; |
28 | | -static char* str12 = "LIGHTNING"; |
29 | | -static char* str13 = "Lightning|\x01\x01Go"; |
30 | | -static char* str14 = "Start Lightning"; |
31 | | -static char* str15 = "Lightning|\x01Globals|\x01\x01JerkFrequency"; |
32 | | -static char* str16 = "Lightning|\x01Globals|\x01\x02ShiftSpeed"; |
33 | | -static char* str17 = "Lightning|\x01Globals|\x01\x03MinPStep"; |
34 | | -static char* str18 = "Lightning|\x01Globals|\x01\x03MaxPStep"; |
35 | | -static char* str19 = "Lightning|\x01Globals|\x02\x01MinScale"; |
36 | | -static char* str20 = "Lightning|\x01Globals|\x02\x01MaxScale"; |
37 | | -static char* str21 = "Lightning|\x01Globals|\x02\x01ScalePerLength"; |
38 | | -static char* str22 = "Lightning|\x01Globals|\x02\x02MinSpan"; |
39 | | -static char* str23 = "Lightning|\x01Globals|\x02\x02SpanPerLength"; |
40 | | -static char* str24 = "Lightning|\x01Globals|\x02\x03SlopeRange"; |
41 | | -static char* str25 = "Lightning|\x01Globals|\x02\x03UVSpeed"; |
42 | | -static char* str26 = "Lightning|\x01Time"; |
43 | | -static char* str27 = "Lightning|\x01Total Points"; |
44 | | -static char* str28 = "Lightning|\x01Type"; |
45 | | -static char* str29 = "Lightning|\x02Flag|Rot Scalar"; |
46 | | -static char* str30 = "Lightning|\x02Flag|No Fade Out"; |
47 | | -static char* str31 = "Lightning|\x02Flag|Arc"; |
48 | | -static char* str32 = "Lightning|\x02Flag|Vertical Orientation"; |
49 | | -static char* str33 = "Lightning|\x02Flag|Taper Thickness At End"; |
50 | | -static char* str34 = "Lightning|\x02Flag|Taper Thickness At Start"; |
51 | | -static char* str35 = "Lightning|\x02Start|x"; |
52 | | -static char* str36 = "Lightning|\x02Start|y"; |
53 | | -static char* str37 = "Lightning|\x02Start|z"; |
54 | | -static char* str38 = "Lightning|\x03End|x"; |
55 | | -static char* str39 = "Lightning|\x03End|y"; |
56 | | -static char* str40 = "Lightning|\x03End|z"; |
57 | | -static char* str41 = "Lightning|\x04Color|\x01R"; |
58 | | -static char* str42 = "Lightning|\x04Color|\x02G"; |
59 | | -static char* str43 = "Lightning|\x04Color|\x03B"; |
60 | | -static char* str44 = "Lightning|\x04Color|\x04A"; |
61 | | -static char* str45 = "Lightning|Lengths|Rot Radius"; |
62 | | -static char* str46 = "Lightning|Lengths|Arc Height"; |
63 | | -static char* str47 = "Lightning|Lengths|Thickness"; |
64 | | -static char* str48 = "Lightning|Randomness|Rand Radius"; |
65 | | -static char* str49 = "X to test lightning\n"; |
66 | | -static char* str50 = " "; |
67 | | -static char* str51 = "1"; |
68 | | -static char* str52 = "0"; |
69 | | -static char* str53 = "-"; |
70 | | -static char* str54 = "\n"; |
| 9 | +_tagLightningAdd gLightningTweakAddInfo; |
| 10 | + |
| 11 | +static zLightning* sLightning[48]; |
| 12 | +static xFuncPiece sLFuncX[10]; |
| 13 | +static xFuncPiece sLFuncY[10]; |
| 14 | +static xFuncPiece sLFuncZ[10]; |
| 15 | +static xVec3 sLFuncVal[10]; |
| 16 | +static xVec3 sLFuncSlope[10][2]; |
| 17 | +static F32 sLFuncEnd[10]; |
| 18 | +static xVec3 sTweakStart; |
| 19 | +static xVec3 sTweakEnd; |
| 20 | +static tweak_callback sLightningStartCB; |
| 21 | +static tweak_callback sLightningChangeCB; |
| 22 | +static xVec3 sPoint[5]; |
| 23 | +static F32 sSize[5]; |
| 24 | + |
| 25 | +char* lightning_type_names[4] = { "Line", "Rotating", "Zeus", "Func" }; |
| 26 | +static zParEmitter* sSparkEmitter; |
| 27 | +static RwRaster* sLightningRaster; |
| 28 | +static F32 sLFuncJerkTime; |
| 29 | +static F32 sLFuncUVOffset; |
| 30 | + |
| 31 | +static F32 sLFuncJerkFreq = 20.0f; |
| 32 | +static F32 sLFuncShift = 15.0f; |
| 33 | +static F32 sLFuncMaxPStep = 1.0f / 16.0f; |
| 34 | +static F32 sLFuncMinPStep = 1.0f / 16.0f; |
| 35 | +static F32 sLFuncMinScale = 3.0f / 10.0f; |
| 36 | +static F32 sLFuncMaxScale = 1.0f; |
| 37 | +static F32 sLFuncScalePerLength = 0.15f; |
| 38 | +static F32 sLFuncMinSpan = 3.0f; |
| 39 | +static F32 sLFuncSpanPerLength = 1.5f; |
| 40 | +static F32 sLFuncSlopeRange = 2.0f; |
| 41 | +static F32 sLFuncUVSpeed = 1.0f; |
71 | 42 |
|
72 | 43 | void xDebugAddTweak(const char*, F32*, F32, F32, const tweak_callback*, void*, U32) |
73 | 44 | { |
|
0 commit comments