ScummVM API documentation
ags_pal_render.h
1 /* ScummVM - Graphic Adventure Engine
2  *
3  * ScummVM is the legal property of its developers, whose names
4  * are too numerous to list here. Please refer to the COPYRIGHT
5  * file distributed with this source distribution.
6  *
7  * This program is free software: you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation, either version 3 of the License, or
10  * of the License, or(at your option) any later version.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program. If not, see <http://www.gnu.org/licenses/>.
19  *
20  */
21 
22 #ifndef AGS_PLUGINS_AGS_PAL_RENDER_AGS_PAL_RENDER_H
23 #define AGS_PLUGINS_AGS_PAL_RENDER_AGS_PAL_RENDER_H
24 
25 #include "ags/plugins/ags_plugin.h"
26 #include "ags/plugins/serializer.h"
27 
28 namespace AGS3 {
29 namespace Plugins {
30 namespace AGSPalRender {
31 
32 class AGSPalRender : public PluginBase {
33  SCRIPT_HASH(AGSPalRender)
34 private:
35  void syncGame(Serializer &s);
36 public:
37  AGSPalRender() : PluginBase() {}
38  virtual ~AGSPalRender() {}
39 
40  const char *AGS_GetPluginName() override;
41  void AGS_EngineStartup(IAGSEngine *lpEngine) override;
42  void AGS_EngineShutdown() override;
43  int64 AGS_EngineOnEvent(int event, NumberPtr data) override;
44 
50  void LoadCLUT(ScriptMethodParams &params);
51  void CycleRemap(ScriptMethodParams &params);
52  void GetColor565(ScriptMethodParams &params);
53  void GetLuminosityFromPalette(ScriptMethodParams &params);
54  void AGSFastSin(ScriptMethodParams &params);
55  void AGSFastCos(ScriptMethodParams &params);
56  void AGSFastRoot(ScriptMethodParams &params);
57  void GetRemappedSlot(ScriptMethodParams &params);
58  void ResetRemapping(ScriptMethodParams &params);
59  void GetModifiedBackgroundImage(ScriptMethodParams &params);
60  void WriteObjectivePalette(ScriptMethodParams &params);
61  void ReadObjectivePaletteR(ScriptMethodParams &params);
62  void ReadObjectivePaletteB(ScriptMethodParams &params);
63  void ReadObjectivePaletteG(ScriptMethodParams &params);
64 
72  void SetLensPos(ScriptMethodParams &params);
73  void GetLensX(ScriptMethodParams &params);
74  void GetLensY(ScriptMethodParams &params);
75  void SetLensDrawn(ScriptMethodParams &params);
76  void GetLensDrawn(ScriptMethodParams &params);
77  void SetLensOffsetClamp(ScriptMethodParams &params);
78  void GetLensOffsetClamp(ScriptMethodParams &params);
79  void GetLensLevel(ScriptMethodParams &params);
80  void SetLensLevel(ScriptMethodParams &params);
81  void LensInitialize(ScriptMethodParams &params);
82 
90  void CreateTranslucentOverlay(ScriptMethodParams &params);
91  void DeleteTranslucentOverlay(ScriptMethodParams &params);
92  void MoveTranslucentOverlay(ScriptMethodParams &params);
93  void GetTranslucentOverlayX(ScriptMethodParams &params);
94  void GetTranslucentOverlayY(ScriptMethodParams &params);
95  void GetTranslucentOverlaySprite(ScriptMethodParams &params);
96  void GetTranslucentOverlayLevel(ScriptMethodParams &params);
97  void GetTranslucentOverlayEnabled(ScriptMethodParams &params);
98  void GetTranslucentOverlayAlpha(ScriptMethodParams &params);
99  void SetTranslucentOverlayAlpha(ScriptMethodParams &params);
100  void SetTranslucentOverlayEnabled(ScriptMethodParams &params);
101  void DrawTransSprite(ScriptMethodParams &params);
102 
110  void GetStarfieldOverscan(ScriptMethodParams &params);
111  void SetStarfieldOverscan(ScriptMethodParams &params);
112  void GetStarfieldOriginX(ScriptMethodParams &params);
113  void GetStarfieldOriginY(ScriptMethodParams &params);
114  void SetStarfieldDepthMultiplier(ScriptMethodParams &params);
115  void GetStarfieldDepthMultiplier(ScriptMethodParams &params);
116  void GetStarfieldMaxStars(ScriptMethodParams &params);
117  void SetStarSpriteScaleBoost(ScriptMethodParams &params);
118  void GetStarSpriteScaleBoost(ScriptMethodParams &params);
119  void SetStarMaxRadius(ScriptMethodParams &params);
120  void GetStarMaxRadius(ScriptMethodParams &params);
121  void GetStarX(ScriptMethodParams &params);
122  void GetStarY(ScriptMethodParams &params);
123  void GetStarZ(ScriptMethodParams &params);
124  void SetStarPosition(ScriptMethodParams &params);
125  void RotateStar(ScriptMethodParams &params);
126  void SetStarColor(ScriptMethodParams &params);
127  void GetStarColor(ScriptMethodParams &params);
128  void SetStarSprite(ScriptMethodParams &params);
129  void GetStarSprite(ScriptMethodParams &params);
130  void SetStarSpriteRange(ScriptMethodParams &params);
131  void InitializeStars(ScriptMethodParams &params);
132  void IterateStars(ScriptMethodParams &params);
133  void DrawStars(ScriptMethodParams &params);
134  void SetStarsOriginPoint(ScriptMethodParams &params);
135 
143  void DoFire(ScriptMethodParams &params);
144  void SetPlasmaType(ScriptMethodParams &params);
145  void ResetPlasmaSettings(ScriptMethodParams &params);
146  void DrawPlasma(ScriptMethodParams &params);
147  void SetPlasmaRootType(ScriptMethodParams &params);
148  void GetPlasmaRootType(ScriptMethodParams &params);
149 
157  void SetReflections(ScriptMethodParams &params);
158  void IsReflectionsOn(ScriptMethodParams &params);
159  void SetCharacterReflected(ScriptMethodParams &params);
160  void GetCharacterReflected(ScriptMethodParams &params);
161  void SetObjectReflected(ScriptMethodParams &params);
162  void GetObjectReflected(ScriptMethodParams &params);
163  void ReplaceCharacterReflectionView(ScriptMethodParams &params);
164  void SetObjectReflectionIgnoreScaling(ScriptMethodParams &params);
165 
173  void MakeTextures(ScriptMethodParams &params);
174  void Raycast_Render(ScriptMethodParams &params);
175  void MoveForward(ScriptMethodParams &params);
176  void MoveBackward(ScriptMethodParams &params);
177  void RotateLeft(ScriptMethodParams &params);
178  void RotateRight(ScriptMethodParams &params);
179  void Init_Raycaster(ScriptMethodParams &params);
180  void QuitCleanup(ScriptMethodParams &params);
181  void LoadMap(ScriptMethodParams &params);
182  void Ray_InitSprite(ScriptMethodParams &params);
183  void Ray_SetPlayerPosition(ScriptMethodParams &params);
184  void Ray_GetPlayerX(ScriptMethodParams &params);
185  void Ray_GetPlayerY(ScriptMethodParams &params);
186  void Ray_GetPlayerAngle(ScriptMethodParams &params);
187  void Ray_SetPlayerAngle(ScriptMethodParams &params);
188 
189  void Ray_GetWallHotspot(ScriptMethodParams &params);
190  void Ray_GetWallTexture(ScriptMethodParams &params);
191  void Ray_GetWallSolid(ScriptMethodParams &params);
192  void Ray_GetWallIgnoreLighting(ScriptMethodParams &params);
193  void Ray_GetWallAlpha(ScriptMethodParams &params);
194  void Ray_GetWallBlendType(ScriptMethodParams &params);
195 
196  void Ray_SelectTile(ScriptMethodParams &params);
197 
198  void Ray_GetHotspotAt(ScriptMethodParams &params);
199  void Ray_GetObjectAt(ScriptMethodParams &params);
200 
201  void Ray_DrawTile(ScriptMethodParams &params);
202  void Ray_DrawOntoTile(ScriptMethodParams &params);
203  void Ray_SetNoClip(ScriptMethodParams &params);
204  void Ray_GetNoClip(ScriptMethodParams &params);
205  void Ray_SetSpriteInteractObj(ScriptMethodParams &params);
206  void Ray_GetSpriteInteractObj(ScriptMethodParams &params);
207  void Ray_SetSpritePosition(ScriptMethodParams &params);
208  void Ray_SetSpriteVertOffset(ScriptMethodParams &params);
209  void Ray_GetSpriteVertOffset(ScriptMethodParams &params);
210  void Ray_GetSpriteX(ScriptMethodParams &params);
211  void Ray_GetSpriteY(ScriptMethodParams &params);
212 
213  void Ray_SetWallHotspot(ScriptMethodParams &params);
214  void Ray_SetWallTextures(ScriptMethodParams &params);
215  void Ray_SetWallSolid(ScriptMethodParams &params);
216  void Ray_SetWallIgnoreLighting(ScriptMethodParams &params);
217  void Ray_SetWallAlpha(ScriptMethodParams &params);
218  void Ray_SetWallBlendType(ScriptMethodParams &params);
219 
220  void Ray_GetMoveSpeed(ScriptMethodParams &params);
221  void Ray_SetMoveSpeed(ScriptMethodParams &params);
222  void Ray_GetRotSpeed(ScriptMethodParams &params);
223  void Ray_SetRotSpeed(ScriptMethodParams &params);
224  void Ray_GetWallAt(ScriptMethodParams &params);
225  void Ray_GetLightAt(ScriptMethodParams &params);
226  void Ray_SetLightAt(ScriptMethodParams &params);
227  void Ray_SetWallAt(ScriptMethodParams &params);
228  void Ray_GetPlaneY(ScriptMethodParams &params);
229  void Ray_SetPlaneY(ScriptMethodParams &params);
230  void Ray_GetDistanceAt(ScriptMethodParams &params);
231  void Ray_GetSpriteAngle(ScriptMethodParams &params);
232  void Ray_SetSpriteAngle(ScriptMethodParams &params);
233  void Ray_SetSpriteView(ScriptMethodParams &params);
234  void Ray_GetSpriteView(ScriptMethodParams &params);
235  void Ray_SetSpriteFrame(ScriptMethodParams &params);
236  void Ray_GetSpriteFrame(ScriptMethodParams &params);
237 
238  void Ray_GetTileX_At(ScriptMethodParams &params);
239  void Ray_GetTileY_At(ScriptMethodParams &params);
240 
241  void Ray_SetSkyBox(ScriptMethodParams &params);
242  void Ray_GetSkyBox(ScriptMethodParams &params);
243 
244  void Ray_SetAmbientLight(ScriptMethodParams &params);
245  void Ray_GetAmbientLight(ScriptMethodParams &params);
246  void Ray_SetAmbientColor(ScriptMethodParams &params);
247 
248 
249  void Ray_GetSpriteAlpha(ScriptMethodParams &params);
250  void Ray_SetSpriteAlpha(ScriptMethodParams &params);
251  void Ray_GetSpritePic(ScriptMethodParams &params);
252  void Ray_SetSpritePic(ScriptMethodParams &params);
253 
254  void Ray_GetSpriteScaleX(ScriptMethodParams &params);
255  void Ray_SetSpriteScaleX(ScriptMethodParams &params);
256  void Ray_GetSpriteScaleY(ScriptMethodParams &params);
257  void Ray_SetSpriteScaleY(ScriptMethodParams &params);
258 
259  void Ray_SetSpriteBlendType(ScriptMethodParams &params);
260  void Ray_GetSpriteBlendType(ScriptMethodParams &params);
261 
262  void Ray_SetFloorAt(ScriptMethodParams &params);
263  void Ray_SetCeilingAt(ScriptMethodParams &params);
264  void Ray_GetCeilingAt(ScriptMethodParams &params);
265  void Ray_GetFloorAt(ScriptMethodParams &params);
266  void Ray_GetLightingAt(ScriptMethodParams &params);
267  void Ray_SetLightingAt(ScriptMethodParams &params);
268  void Ray_GetAmbientWeight(ScriptMethodParams &params);
269 
270  void Ray_HasSeenTile(ScriptMethodParams &params);
271 
273 };
274 
275 } // namespace AGSPalRender
276 } // namespace Plugins
277 } // namespace AGS3
278 
279 #endif
Definition: serializer.h:32
Definition: types.h:111
Definition: ags_pal_render.h:32
Definition: plugin_base.h:171
Definition: plugin_base.h:131
Definition: ags_plugin.h:328
Definition: ags.h:40