AGS: Shifting multiple classes to plugins/core/

This commit is contained in:
Paul Gilbert 2021-07-14 23:09:34 -07:00
parent 83bf163365
commit 9742dfb163
30 changed files with 2266 additions and 321 deletions

View File

@ -294,22 +294,6 @@ void RegisterAudioChannelAPI() {
ccAddExternalObjectFunction("AudioChannel::set_Speed", Sc_AudioChannel_SetSpeed);
// For compatibility with Ahmet Kamil's (aka Gord10) custom engine
ccAddExternalObjectFunction("AudioChannel::SetSpeed^1", Sc_AudioChannel_SetSpeed);
/* ----------------------- Registering unsafe exports for plugins -----------------------*/
ccAddExternalFunctionForPlugin("AudioChannel::Seek^1", (void *)AudioChannel_Seek);
ccAddExternalFunctionForPlugin("AudioChannel::SetRoomLocation^2", (void *)AudioChannel_SetRoomLocation);
ccAddExternalFunctionForPlugin("AudioChannel::Stop^0", (void *)AudioChannel_Stop);
ccAddExternalFunctionForPlugin("AudioChannel::get_ID", (void *)AudioChannel_GetID);
ccAddExternalFunctionForPlugin("AudioChannel::get_IsPlaying", (void *)AudioChannel_GetIsPlaying);
ccAddExternalFunctionForPlugin("AudioChannel::get_LengthMs", (void *)AudioChannel_GetLengthMs);
ccAddExternalFunctionForPlugin("AudioChannel::get_Panning", (void *)AudioChannel_GetPanning);
ccAddExternalFunctionForPlugin("AudioChannel::set_Panning", (void *)AudioChannel_SetPanning);
ccAddExternalFunctionForPlugin("AudioChannel::get_PlayingClip", (void *)AudioChannel_GetPlayingClip);
ccAddExternalFunctionForPlugin("AudioChannel::get_Position", (void *)AudioChannel_GetPosition);
ccAddExternalFunctionForPlugin("AudioChannel::get_PositionMs", (void *)AudioChannel_GetPositionMs);
ccAddExternalFunctionForPlugin("AudioChannel::get_Volume", (void *)AudioChannel_GetVolume);
ccAddExternalFunctionForPlugin("AudioChannel::set_Volume", (void *)AudioChannel_SetVolume);
}
} // namespace AGS3

View File

@ -129,16 +129,6 @@ void RegisterAudioClipAPI() {
ccAddExternalObjectFunction("AudioClip::get_FileType", Sc_AudioClip_GetFileType);
ccAddExternalObjectFunction("AudioClip::get_IsAvailable", Sc_AudioClip_GetIsAvailable);
ccAddExternalObjectFunction("AudioClip::get_Type", Sc_AudioClip_GetType);
/* ----------------------- Registering unsafe exports for plugins -----------------------*/
ccAddExternalFunctionForPlugin("AudioClip::Play^2", (void *)AudioClip_Play);
ccAddExternalFunctionForPlugin("AudioClip::PlayFrom^3", (void *)AudioClip_PlayFrom);
ccAddExternalFunctionForPlugin("AudioClip::PlayQueued^2", (void *)AudioClip_PlayQueued);
ccAddExternalFunctionForPlugin("AudioClip::Stop^0", (void *)AudioClip_Stop);
ccAddExternalFunctionForPlugin("AudioClip::get_FileType", (void *)AudioClip_GetFileType);
ccAddExternalFunctionForPlugin("AudioClip::get_IsAvailable", (void *)AudioClip_GetIsAvailable);
ccAddExternalFunctionForPlugin("AudioClip::get_Type", (void *)AudioClip_GetType);
}
} // namespace AGS3

View File

@ -439,27 +439,6 @@ void RegisterButtonAPI() {
ccAddExternalObjectFunction("Button::get_TextColor", Sc_Button_GetTextColor);
ccAddExternalObjectFunction("Button::set_TextColor", Sc_Button_SetTextColor);
ccAddExternalObjectFunction("Button::get_View", Sc_Button_GetView);
/* ----------------------- Registering unsafe exports for plugins -----------------------*/
ccAddExternalFunctionForPlugin("Button::Animate^4", (void *)Button_Animate);
ccAddExternalFunctionForPlugin("Button::GetText^1", (void *)Button_GetText);
ccAddExternalFunctionForPlugin("Button::SetText^1", (void *)Button_SetText);
ccAddExternalFunctionForPlugin("Button::get_ClipImage", (void *)Button_GetClipImage);
ccAddExternalFunctionForPlugin("Button::set_ClipImage", (void *)Button_SetClipImage);
ccAddExternalFunctionForPlugin("Button::get_Font", (void *)Button_GetFont);
ccAddExternalFunctionForPlugin("Button::set_Font", (void *)Button_SetFont);
ccAddExternalFunctionForPlugin("Button::get_Graphic", (void *)Button_GetGraphic);
ccAddExternalFunctionForPlugin("Button::get_MouseOverGraphic", (void *)Button_GetMouseOverGraphic);
ccAddExternalFunctionForPlugin("Button::set_MouseOverGraphic", (void *)Button_SetMouseOverGraphic);
ccAddExternalFunctionForPlugin("Button::get_NormalGraphic", (void *)Button_GetNormalGraphic);
ccAddExternalFunctionForPlugin("Button::set_NormalGraphic", (void *)Button_SetNormalGraphic);
ccAddExternalFunctionForPlugin("Button::get_PushedGraphic", (void *)Button_GetPushedGraphic);
ccAddExternalFunctionForPlugin("Button::set_PushedGraphic", (void *)Button_SetPushedGraphic);
ccAddExternalFunctionForPlugin("Button::get_Text", (void *)Button_GetText_New);
ccAddExternalFunctionForPlugin("Button::set_Text", (void *)Button_SetText);
ccAddExternalFunctionForPlugin("Button::get_TextColor", (void *)Button_GetTextColor);
ccAddExternalFunctionForPlugin("Button::set_TextColor", (void *)Button_SetTextColor);
}
} // namespace AGS3

View File

@ -3682,148 +3682,6 @@ void RegisterCharacterAPI(ScriptAPIVersion base_api, ScriptAPIVersion compat_api
ccAddExternalObjectFunction("Character::get_TintRed", Sc_Character_GetTintRed);
ccAddExternalObjectFunction("Character::get_TintSaturation", Sc_Character_GetTintSaturation);
ccAddExternalObjectFunction("Character::get_TintLuminance", Sc_Character_GetTintLuminance);
/* ----------------------- Registering unsafe exports for plugins -----------------------*/
ccAddExternalFunctionForPlugin("Character::AddInventory^2", (void *)Character_AddInventory);
ccAddExternalFunctionForPlugin("Character::AddWaypoint^2", (void *)Character_AddWaypoint);
ccAddExternalFunctionForPlugin("Character::Animate^5", (void *)Character_Animate);
ccAddExternalFunctionForPlugin("Character::ChangeRoom^3", (void *)Character_ChangeRoom);
ccAddExternalFunctionForPlugin("Character::ChangeRoomAutoPosition^2", (void *)Character_ChangeRoomAutoPosition);
ccAddExternalFunctionForPlugin("Character::ChangeView^1", (void *)Character_ChangeView);
ccAddExternalFunctionForPlugin("Character::FaceCharacter^2", (void *)Character_FaceCharacter);
ccAddExternalFunctionForPlugin("Character::FaceDirection^2", (void *)Character_FaceDirection);
ccAddExternalFunctionForPlugin("Character::FaceLocation^3", (void *)Character_FaceLocation);
ccAddExternalFunctionForPlugin("Character::FaceObject^2", (void *)Character_FaceObject);
ccAddExternalFunctionForPlugin("Character::FollowCharacter^3", (void *)Character_FollowCharacter);
ccAddExternalFunctionForPlugin("Character::GetProperty^1", (void *)Character_GetProperty);
ccAddExternalFunctionForPlugin("Character::GetPropertyText^2", (void *)Character_GetPropertyText);
ccAddExternalFunctionForPlugin("Character::GetTextProperty^1", (void *)Character_GetTextProperty);
ccAddExternalFunctionForPlugin("Character::HasInventory^1", (void *)Character_HasInventory);
ccAddExternalFunctionForPlugin("Character::IsCollidingWithChar^1", (void *)Character_IsCollidingWithChar);
ccAddExternalFunctionForPlugin("Character::IsCollidingWithObject^1", (void *)Character_IsCollidingWithObject);
ccAddExternalFunctionForPlugin("Character::LockView^1", (void *)Character_LockView);
ccAddExternalFunctionForPlugin("Character::LockView^2", (void *)Character_LockViewEx);
if (base_api < kScriptAPI_v341) {
ccAddExternalFunctionForPlugin("Character::LockViewAligned^3", (void *)Character_LockViewAligned_Old);
ccAddExternalFunctionForPlugin("Character::LockViewAligned^4", (void *)Character_LockViewAlignedEx_Old);
} else {
ccAddExternalFunctionForPlugin("Character::LockViewAligned^3", (void *)Character_LockViewAligned);
ccAddExternalFunctionForPlugin("Character::LockViewAligned^4", (void *)Character_LockViewAlignedEx);
}
ccAddExternalFunctionForPlugin("Character::LockViewFrame^3", (void *)Character_LockViewFrame);
ccAddExternalFunctionForPlugin("Character::LockViewFrame^4", (void *)Character_LockViewFrameEx);
ccAddExternalFunctionForPlugin("Character::LockViewOffset^3", (void *)Character_LockViewOffset);
ccAddExternalFunctionForPlugin("Character::LockViewOffset^4", (void *)Character_LockViewOffset);
ccAddExternalFunctionForPlugin("Character::LoseInventory^1", (void *)Character_LoseInventory);
ccAddExternalFunctionForPlugin("Character::Move^4", (void *)Character_Move);
ccAddExternalFunctionForPlugin("Character::PlaceOnWalkableArea^0", (void *)Character_PlaceOnWalkableArea);
ccAddExternalFunctionForPlugin("Character::RemoveTint^0", (void *)Character_RemoveTint);
ccAddExternalFunctionForPlugin("Character::RunInteraction^1", (void *)Character_RunInteraction);
ccAddExternalFunctionForPlugin("Character::Say^101", (void *)ScPl_Character_Say);
ccAddExternalFunctionForPlugin("Character::SayAt^4", (void *)Character_SayAt);
ccAddExternalFunctionForPlugin("Character::SayBackground^1", (void *)Character_SayBackground);
ccAddExternalFunctionForPlugin("Character::SetAsPlayer^0", (void *)Character_SetAsPlayer);
ccAddExternalFunctionForPlugin("Character::SetIdleView^2", (void *)Character_SetIdleView);
//ccAddExternalFunctionForPlugin("Character::SetOption^2", (void*)Character_SetOption);
ccAddExternalFunctionForPlugin("Character::SetWalkSpeed^2", (void *)Character_SetSpeed);
ccAddExternalFunctionForPlugin("Character::StopMoving^0", (void *)Character_StopMoving);
ccAddExternalFunctionForPlugin("Character::Think^101", (void *)ScPl_Character_Think);
ccAddExternalFunctionForPlugin("Character::Tint^5", (void *)Character_Tint);
ccAddExternalFunctionForPlugin("Character::UnlockView^0", (void *)Character_UnlockView);
ccAddExternalFunctionForPlugin("Character::UnlockView^1", (void *)Character_UnlockViewEx);
ccAddExternalFunctionForPlugin("Character::Walk^4", (void *)Character_Walk);
ccAddExternalFunctionForPlugin("Character::WalkStraight^3", (void *)Character_WalkStraight);
ccAddExternalFunctionForPlugin("Character::GetAtRoomXY^2", (void *)GetCharacterAtRoom);
ccAddExternalFunctionForPlugin("Character::GetAtScreenXY^2", (void *)GetCharacterAtScreen);
ccAddExternalFunctionForPlugin("Character::get_ActiveInventory", (void *)Character_GetActiveInventory);
ccAddExternalFunctionForPlugin("Character::set_ActiveInventory", (void *)Character_SetActiveInventory);
ccAddExternalFunctionForPlugin("Character::get_Animating", (void *)Character_GetAnimating);
ccAddExternalFunctionForPlugin("Character::get_AnimationSpeed", (void *)Character_GetAnimationSpeed);
ccAddExternalFunctionForPlugin("Character::set_AnimationSpeed", (void *)Character_SetAnimationSpeed);
ccAddExternalFunctionForPlugin("Character::get_Baseline", (void *)Character_GetBaseline);
ccAddExternalFunctionForPlugin("Character::set_Baseline", (void *)Character_SetBaseline);
ccAddExternalFunctionForPlugin("Character::get_BlinkInterval", (void *)Character_GetBlinkInterval);
ccAddExternalFunctionForPlugin("Character::set_BlinkInterval", (void *)Character_SetBlinkInterval);
ccAddExternalFunctionForPlugin("Character::get_BlinkView", (void *)Character_GetBlinkView);
ccAddExternalFunctionForPlugin("Character::set_BlinkView", (void *)Character_SetBlinkView);
ccAddExternalFunctionForPlugin("Character::get_BlinkWhileThinking", (void *)Character_GetBlinkWhileThinking);
ccAddExternalFunctionForPlugin("Character::set_BlinkWhileThinking", (void *)Character_SetBlinkWhileThinking);
ccAddExternalFunctionForPlugin("Character::get_BlockingHeight", (void *)Character_GetBlockingHeight);
ccAddExternalFunctionForPlugin("Character::set_BlockingHeight", (void *)Character_SetBlockingHeight);
ccAddExternalFunctionForPlugin("Character::get_BlockingWidth", (void *)Character_GetBlockingWidth);
ccAddExternalFunctionForPlugin("Character::set_BlockingWidth", (void *)Character_SetBlockingWidth);
ccAddExternalFunctionForPlugin("Character::get_Clickable", (void *)Character_GetClickable);
ccAddExternalFunctionForPlugin("Character::set_Clickable", (void *)Character_SetClickable);
ccAddExternalFunctionForPlugin("Character::get_DestinationX", (void *)Character_GetDestinationX);
ccAddExternalFunctionForPlugin("Character::get_DestinationY", (void *)Character_GetDestinationY);
ccAddExternalFunctionForPlugin("Character::get_DiagonalLoops", (void *)Character_GetDiagonalWalking);
ccAddExternalFunctionForPlugin("Character::set_DiagonalLoops", (void *)Character_SetDiagonalWalking);
ccAddExternalFunctionForPlugin("Character::get_Frame", (void *)Character_GetFrame);
ccAddExternalFunctionForPlugin("Character::set_Frame", (void *)Character_SetFrame);
if (base_api < kScriptAPI_v341)
ccAddExternalFunctionForPlugin("Character::get_HasExplicitTint", (void *)Character_GetHasExplicitTint_Old);
else
ccAddExternalFunctionForPlugin("Character::get_HasExplicitTint", (void *)Character_GetHasExplicitTint);
ccAddExternalFunctionForPlugin("Character::get_ID", (void *)Character_GetID);
ccAddExternalFunctionForPlugin("Character::get_IdleView", (void *)Character_GetIdleView);
ccAddExternalFunctionForPlugin("Character::geti_InventoryQuantity", (void *)Character_GetIInventoryQuantity);
ccAddExternalFunctionForPlugin("Character::seti_InventoryQuantity", (void *)Character_SetIInventoryQuantity);
ccAddExternalFunctionForPlugin("Character::get_IgnoreLighting", (void *)Character_GetIgnoreLighting);
ccAddExternalFunctionForPlugin("Character::set_IgnoreLighting", (void *)Character_SetIgnoreLighting);
ccAddExternalFunctionForPlugin("Character::get_IgnoreScaling", (void *)Character_GetIgnoreScaling);
ccAddExternalFunctionForPlugin("Character::set_IgnoreScaling", (void *)Character_SetIgnoreScaling);
ccAddExternalFunctionForPlugin("Character::get_IgnoreWalkbehinds", (void *)Character_GetIgnoreWalkbehinds);
ccAddExternalFunctionForPlugin("Character::set_IgnoreWalkbehinds", (void *)Character_SetIgnoreWalkbehinds);
ccAddExternalFunctionForPlugin("Character::get_Loop", (void *)Character_GetLoop);
ccAddExternalFunctionForPlugin("Character::set_Loop", (void *)Character_SetLoop);
ccAddExternalFunctionForPlugin("Character::get_ManualScaling", (void *)Character_GetIgnoreScaling);
ccAddExternalFunctionForPlugin("Character::set_ManualScaling", (void *)Character_SetManualScaling);
ccAddExternalFunctionForPlugin("Character::get_MovementLinkedToAnimation", (void *)Character_GetMovementLinkedToAnimation);
ccAddExternalFunctionForPlugin("Character::set_MovementLinkedToAnimation", (void *)Character_SetMovementLinkedToAnimation);
ccAddExternalFunctionForPlugin("Character::get_Moving", (void *)Character_GetMoving);
ccAddExternalFunctionForPlugin("Character::get_Name", (void *)Character_GetName);
ccAddExternalFunctionForPlugin("Character::set_Name", (void *)Character_SetName);
ccAddExternalFunctionForPlugin("Character::get_NormalView", (void *)Character_GetNormalView);
ccAddExternalFunctionForPlugin("Character::get_PreviousRoom", (void *)Character_GetPreviousRoom);
ccAddExternalFunctionForPlugin("Character::get_Room", (void *)Character_GetRoom);
ccAddExternalFunctionForPlugin("Character::get_ScaleMoveSpeed", (void *)Character_GetScaleMoveSpeed);
ccAddExternalFunctionForPlugin("Character::set_ScaleMoveSpeed", (void *)Character_SetScaleMoveSpeed);
ccAddExternalFunctionForPlugin("Character::get_ScaleVolume", (void *)Character_GetScaleVolume);
ccAddExternalFunctionForPlugin("Character::set_ScaleVolume", (void *)Character_SetScaleVolume);
ccAddExternalFunctionForPlugin("Character::get_Scaling", (void *)Character_GetScaling);
ccAddExternalFunctionForPlugin("Character::set_Scaling", (void *)Character_SetScaling);
ccAddExternalFunctionForPlugin("Character::get_Solid", (void *)Character_GetSolid);
ccAddExternalFunctionForPlugin("Character::set_Solid", (void *)Character_SetSolid);
ccAddExternalFunctionForPlugin("Character::get_Speaking", (void *)Character_GetSpeaking);
ccAddExternalFunctionForPlugin("Character::get_SpeakingFrame", (void *)Character_GetSpeakingFrame);
ccAddExternalFunctionForPlugin("Character::get_SpeechAnimationDelay", (void *)GetCharacterSpeechAnimationDelay);
ccAddExternalFunctionForPlugin("Character::set_SpeechAnimationDelay", (void *)Character_SetSpeechAnimationDelay);
ccAddExternalFunctionForPlugin("Character::get_SpeechColor", (void *)Character_GetSpeechColor);
ccAddExternalFunctionForPlugin("Character::set_SpeechColor", (void *)Character_SetSpeechColor);
ccAddExternalFunctionForPlugin("Character::get_SpeechView", (void *)Character_GetSpeechView);
ccAddExternalFunctionForPlugin("Character::set_SpeechView", (void *)Character_SetSpeechView);
ccAddExternalFunctionForPlugin("Character::get_ThinkView", (void *)Character_GetThinkView);
ccAddExternalFunctionForPlugin("Character::set_ThinkView", (void *)Character_SetThinkView);
ccAddExternalFunctionForPlugin("Character::get_Transparency", (void *)Character_GetTransparency);
ccAddExternalFunctionForPlugin("Character::set_Transparency", (void *)Character_SetTransparency);
ccAddExternalFunctionForPlugin("Character::get_TurnBeforeWalking", (void *)Character_GetTurnBeforeWalking);
ccAddExternalFunctionForPlugin("Character::set_TurnBeforeWalking", (void *)Character_SetTurnBeforeWalking);
ccAddExternalFunctionForPlugin("Character::get_View", (void *)Character_GetView);
ccAddExternalFunctionForPlugin("Character::get_WalkSpeedX", (void *)Character_GetWalkSpeedX);
ccAddExternalFunctionForPlugin("Character::get_WalkSpeedY", (void *)Character_GetWalkSpeedY);
ccAddExternalFunctionForPlugin("Character::get_X", (void *)Character_GetX);
ccAddExternalFunctionForPlugin("Character::set_X", (void *)Character_SetX);
ccAddExternalFunctionForPlugin("Character::get_x", (void *)Character_GetX);
ccAddExternalFunctionForPlugin("Character::set_x", (void *)Character_SetX);
ccAddExternalFunctionForPlugin("Character::get_Y", (void *)Character_GetY);
ccAddExternalFunctionForPlugin("Character::set_Y", (void *)Character_SetY);
ccAddExternalFunctionForPlugin("Character::get_y", (void *)Character_GetY);
ccAddExternalFunctionForPlugin("Character::set_y", (void *)Character_SetY);
ccAddExternalFunctionForPlugin("Character::get_Z", (void *)Character_GetZ);
ccAddExternalFunctionForPlugin("Character::set_Z", (void *)Character_SetZ);
ccAddExternalFunctionForPlugin("Character::get_z", (void *)Character_GetZ);
ccAddExternalFunctionForPlugin("Character::set_z", (void *)Character_SetZ);
}
} // namespace AGS3

View File

@ -53,7 +53,9 @@ bool Character_IsInteractionAvailable(CharacterInfo *cchar, int mood);
void Character_LockView(CharacterInfo *chap, int vii);
void Character_LockViewEx(CharacterInfo *chap, int vii, int stopMoving);
void Character_LockViewAligned(CharacterInfo *chap, int vii, int loop, int align);
void Character_LockViewAligned_Old(CharacterInfo *chap, int vii, int loop, int align);
void Character_LockViewAlignedEx(CharacterInfo *chap, int vii, int loop, int align, int stopMoving);
void Character_LockViewAlignedEx_Old(CharacterInfo *chap, int vii, int loop, int align, int stopMoving);
void Character_LockViewFrame(CharacterInfo *chaa, int view, int loop, int frame);
void Character_LockViewFrameEx(CharacterInfo *chaa, int view, int loop, int frame, int stopMoving);
void Character_LockViewOffset(CharacterInfo *chap, int vii, int xoffs, int yoffs);
@ -62,6 +64,7 @@ void Character_LoseInventory(CharacterInfo *chap, ScriptInvItem *invi);
void Character_PlaceOnWalkableArea(CharacterInfo *chap);
void Character_RemoveTint(CharacterInfo *chaa);
int Character_GetHasExplicitTint(CharacterInfo *chaa);
int Character_GetHasExplicitTint_Old(CharacterInfo *ch);
void Character_Say(CharacterInfo *chaa, const char *text);
void Character_SayAt(CharacterInfo *chaa, int x, int y, int width, const char *texx);
ScriptOverlay *Character_SayBackground(CharacterInfo *chaa, const char *texx);
@ -107,6 +110,8 @@ int Character_GetDiagonalWalking(CharacterInfo *chaa);
void Character_SetDiagonalWalking(CharacterInfo *chaa, int yesorno);
int Character_GetClickable(CharacterInfo *chaa);
void Character_SetClickable(CharacterInfo *chaa, int clik);
int Character_GetDestinationX(CharacterInfo *chaa);
int Character_GetDestinationY(CharacterInfo *chaa);
int Character_GetID(CharacterInfo *chaa);
int Character_GetFrame(CharacterInfo *chaa);
void Character_SetFrame(CharacterInfo *chaa, int newval);
@ -195,6 +200,7 @@ void setup_player_character(int charid);
void CheckViewFrameForCharacter(CharacterInfo *chi);
Shared::Bitmap *GetCharacterImage(int charid, int *isFlipped);
CharacterInfo *GetCharacterAtScreen(int xx, int yy);
CharacterInfo *GetCharacterAtRoom(int x, int y);
// Get character ID at the given room coordinates
int is_pos_on_character(int xx, int yy);
void get_char_blocking_rect(int charid, int *x1, int *y1, int *width, int *y2);

View File

@ -127,17 +127,6 @@ void RegisterDateTimeAPI() {
ccAddExternalObjectFunction("DateTime::get_RawTime", Sc_DateTime_GetRawTime);
ccAddExternalObjectFunction("DateTime::get_Second", Sc_DateTime_GetSecond);
ccAddExternalObjectFunction("DateTime::get_Year", Sc_DateTime_GetYear);
/* ----------------------- Registering unsafe exports for plugins -----------------------*/
ccAddExternalFunctionForPlugin("DateTime::get_Now", (void *)DateTime_Now);
ccAddExternalFunctionForPlugin("DateTime::get_DayOfMonth", (void *)DateTime_GetDayOfMonth);
ccAddExternalFunctionForPlugin("DateTime::get_Hour", (void *)DateTime_GetHour);
ccAddExternalFunctionForPlugin("DateTime::get_Minute", (void *)DateTime_GetMinute);
ccAddExternalFunctionForPlugin("DateTime::get_Month", (void *)DateTime_GetMonth);
ccAddExternalFunctionForPlugin("DateTime::get_RawTime", (void *)DateTime_GetRawTime);
ccAddExternalFunctionForPlugin("DateTime::get_Second", (void *)DateTime_GetSecond);
ccAddExternalFunctionForPlugin("DateTime::get_Year", (void *)DateTime_GetYear);
}
} // namespace AGS3

View File

@ -1206,18 +1206,6 @@ void RegisterDialogAPI() {
ccAddExternalObjectFunction("Dialog::SetHasOptionBeenChosen^2", Sc_Dialog_SetHasOptionBeenChosen);
ccAddExternalObjectFunction("Dialog::SetOptionState^2", Sc_Dialog_SetOptionState);
ccAddExternalObjectFunction("Dialog::Start^0", Sc_Dialog_Start);
/* ----------------------- Registering unsafe exports for plugins -----------------------*/
ccAddExternalFunctionForPlugin("Dialog::get_ID", (void *)Dialog_GetID);
ccAddExternalFunctionForPlugin("Dialog::get_OptionCount", (void *)Dialog_GetOptionCount);
ccAddExternalFunctionForPlugin("Dialog::get_ShowTextParser", (void *)Dialog_GetShowTextParser);
ccAddExternalFunctionForPlugin("Dialog::DisplayOptions^1", (void *)Dialog_DisplayOptions);
ccAddExternalFunctionForPlugin("Dialog::GetOptionState^1", (void *)Dialog_GetOptionState);
ccAddExternalFunctionForPlugin("Dialog::GetOptionText^1", (void *)Dialog_GetOptionText);
ccAddExternalFunctionForPlugin("Dialog::HasOptionBeenChosen^1", (void *)Dialog_HasOptionBeenChosen);
ccAddExternalFunctionForPlugin("Dialog::SetOptionState^2", (void *)Dialog_SetOptionState);
ccAddExternalFunctionForPlugin("Dialog::Start^0", (void *)Dialog_Start);
}
} // namespace AGS3

View File

@ -269,27 +269,6 @@ void RegisterDialogOptionsRenderingAPI() {
ccAddExternalObjectFunction("DialogOptionsRenderingInfo::set_Y", Sc_DialogOptionsRendering_SetY);
ccAddExternalObjectFunction("DialogOptionsRenderingInfo::get_HasAlphaChannel", Sc_DialogOptionsRendering_GetHasAlphaChannel);
ccAddExternalObjectFunction("DialogOptionsRenderingInfo::set_HasAlphaChannel", Sc_DialogOptionsRendering_SetHasAlphaChannel);
/* ----------------------- Registering unsafe exports for plugins -----------------------*/
ccAddExternalFunctionForPlugin("DialogOptionsRenderingInfo::get_ActiveOptionID", (void *)DialogOptionsRendering_GetActiveOptionID);
ccAddExternalFunctionForPlugin("DialogOptionsRenderingInfo::set_ActiveOptionID", (void *)DialogOptionsRendering_SetActiveOptionID);
ccAddExternalFunctionForPlugin("DialogOptionsRenderingInfo::get_DialogToRender", (void *)DialogOptionsRendering_GetDialogToRender);
ccAddExternalFunctionForPlugin("DialogOptionsRenderingInfo::get_Height", (void *)DialogOptionsRendering_GetHeight);
ccAddExternalFunctionForPlugin("DialogOptionsRenderingInfo::set_Height", (void *)DialogOptionsRendering_SetHeight);
ccAddExternalFunctionForPlugin("DialogOptionsRenderingInfo::get_ParserTextBoxX", (void *)DialogOptionsRendering_GetParserTextboxX);
ccAddExternalFunctionForPlugin("DialogOptionsRenderingInfo::set_ParserTextBoxX", (void *)DialogOptionsRendering_SetParserTextboxX);
ccAddExternalFunctionForPlugin("DialogOptionsRenderingInfo::get_ParserTextBoxY", (void *)DialogOptionsRendering_GetParserTextboxY);
ccAddExternalFunctionForPlugin("DialogOptionsRenderingInfo::set_ParserTextBoxY", (void *)DialogOptionsRendering_SetParserTextboxY);
ccAddExternalFunctionForPlugin("DialogOptionsRenderingInfo::get_ParserTextBoxWidth", (void *)DialogOptionsRendering_GetParserTextboxWidth);
ccAddExternalFunctionForPlugin("DialogOptionsRenderingInfo::set_ParserTextBoxWidth", (void *)DialogOptionsRendering_SetParserTextboxWidth);
ccAddExternalFunctionForPlugin("DialogOptionsRenderingInfo::get_Surface", (void *)DialogOptionsRendering_GetSurface);
ccAddExternalFunctionForPlugin("DialogOptionsRenderingInfo::get_Width", (void *)DialogOptionsRendering_GetWidth);
ccAddExternalFunctionForPlugin("DialogOptionsRenderingInfo::set_Width", (void *)DialogOptionsRendering_SetWidth);
ccAddExternalFunctionForPlugin("DialogOptionsRenderingInfo::get_X", (void *)DialogOptionsRendering_GetX);
ccAddExternalFunctionForPlugin("DialogOptionsRenderingInfo::set_X", (void *)DialogOptionsRendering_SetX);
ccAddExternalFunctionForPlugin("DialogOptionsRenderingInfo::get_Y", (void *)DialogOptionsRendering_GetY);
ccAddExternalFunctionForPlugin("DialogOptionsRenderingInfo::set_Y", (void *)DialogOptionsRendering_SetY);
}
} // namespace AGS3

View File

@ -614,31 +614,6 @@ void RegisterDynamicSpriteAPI() {
ccAddExternalStaticFunction("DynamicSprite::CreateFromFile", Sc_DynamicSprite_CreateFromFile);
ccAddExternalStaticFunction("DynamicSprite::CreateFromSaveGame", Sc_DynamicSprite_CreateFromSaveGame);
ccAddExternalStaticFunction("DynamicSprite::CreateFromScreenShot", Sc_DynamicSprite_CreateFromScreenShot);
/* ----------------------- Registering unsafe exports for plugins -----------------------*/
ccAddExternalFunctionForPlugin("DynamicSprite::ChangeCanvasSize^4", (void *)DynamicSprite_ChangeCanvasSize);
ccAddExternalFunctionForPlugin("DynamicSprite::CopyTransparencyMask^1", (void *)DynamicSprite_CopyTransparencyMask);
ccAddExternalFunctionForPlugin("DynamicSprite::Crop^4", (void *)DynamicSprite_Crop);
ccAddExternalFunctionForPlugin("DynamicSprite::Delete", (void *)DynamicSprite_Delete);
ccAddExternalFunctionForPlugin("DynamicSprite::Flip^1", (void *)DynamicSprite_Flip);
ccAddExternalFunctionForPlugin("DynamicSprite::GetDrawingSurface^0", (void *)DynamicSprite_GetDrawingSurface);
ccAddExternalFunctionForPlugin("DynamicSprite::Resize^2", (void *)DynamicSprite_Resize);
ccAddExternalFunctionForPlugin("DynamicSprite::Rotate^3", (void *)DynamicSprite_Rotate);
ccAddExternalFunctionForPlugin("DynamicSprite::SaveToFile^1", (void *)DynamicSprite_SaveToFile);
ccAddExternalFunctionForPlugin("DynamicSprite::Tint^5", (void *)DynamicSprite_Tint);
ccAddExternalFunctionForPlugin("DynamicSprite::get_ColorDepth", (void *)DynamicSprite_GetColorDepth);
ccAddExternalFunctionForPlugin("DynamicSprite::get_Graphic", (void *)DynamicSprite_GetGraphic);
ccAddExternalFunctionForPlugin("DynamicSprite::get_Height", (void *)DynamicSprite_GetHeight);
ccAddExternalFunctionForPlugin("DynamicSprite::get_Width", (void *)DynamicSprite_GetWidth);
ccAddExternalFunctionForPlugin("DynamicSprite::Create^3", (void *)DynamicSprite_Create);
ccAddExternalFunctionForPlugin("DynamicSprite::CreateFromBackground", (void *)DynamicSprite_CreateFromBackground);
ccAddExternalFunctionForPlugin("DynamicSprite::CreateFromDrawingSurface^5", (void *)DynamicSprite_CreateFromDrawingSurface);
ccAddExternalFunctionForPlugin("DynamicSprite::CreateFromExistingSprite^1", (void *)DynamicSprite_CreateFromExistingSprite_Old);
ccAddExternalFunctionForPlugin("DynamicSprite::CreateFromExistingSprite^2", (void *)DynamicSprite_CreateFromExistingSprite);
ccAddExternalFunctionForPlugin("DynamicSprite::CreateFromFile", (void *)DynamicSprite_CreateFromFile);
ccAddExternalFunctionForPlugin("DynamicSprite::CreateFromSaveGame", (void *)DynamicSprite_CreateFromSaveGame);
ccAddExternalFunctionForPlugin("DynamicSprite::CreateFromScreenShot", (void *)DynamicSprite_CreateFromScreenShot);
}
} // namespace AGS3

View File

@ -287,7 +287,15 @@ MODULE_OBJS = \
plugins/plugin_base.o \
plugins/plugin_object_reader.o \
plugins/core/core.o \
plugins/core/audio_channel.o \
plugins/core/audio_clip.o \
plugins/core/button.o \
plugins/core/character.o \
plugins/core/date_time.o \
plugins/core/dialog.o \
plugins/core/dialog_options_rendering_info.o \
plugins/core/drawing_surface.o \
plugins/core/dynamic_sprite.o \
plugins/ags_agi/ags_agi.o \
plugins/ags_blend/ags_blend.o \
plugins/ags_clipboard/ags_clipboard.o \

View File

@ -0,0 +1,113 @@
/* ScummVM - Graphic Adventure Engine
*
* ScummVM is the legal property of its developers, whose names
* are too numerous to list here. Please refer to the COPYRIGHT
* file distributed with this source distribution.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
#include "ags/plugins/core/audio_channel.h"
#include "ags/engine/ac/audio_channel.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
void AudioChannel::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(AudioChannel::Seek^1, Seek);
SCRIPT_METHOD_EXT(AudioChannel::SetRoomLocation^2, SetRoomLocation);
SCRIPT_METHOD_EXT(AudioChannel::Stop^0, Stop);
SCRIPT_METHOD_EXT(AudioChannel::get_ID, GetID);
SCRIPT_METHOD_EXT(AudioChannel::get_IsPlaying, GetIsPlaying);
SCRIPT_METHOD_EXT(AudioChannel::get_LengthMs, GetLengthMs);
SCRIPT_METHOD_EXT(AudioChannel::get_Panning, GetPanning);
SCRIPT_METHOD_EXT(AudioChannel::set_Panning, SetPanning);
SCRIPT_METHOD_EXT(AudioChannel::get_PlayingClip, GetPlayingClip);
SCRIPT_METHOD_EXT(AudioChannel::get_Position, GetPosition);
SCRIPT_METHOD_EXT(AudioChannel::get_PositionMs, GetPositionMs);
SCRIPT_METHOD_EXT(AudioChannel::get_Volume, GetVolume);
SCRIPT_METHOD_EXT(AudioChannel::set_Volume, SetVolume);
}
void AudioChannel::Seek(ScriptMethodParams &params) {
PARAMS2(ScriptAudioChannel *, channel, int, newPosition);
AGS3::AudioChannel_Seek(channel, newPosition);
}
void AudioChannel::SetRoomLocation(ScriptMethodParams &params) {
PARAMS3(ScriptAudioChannel *, channel, int, xPos, int, yPos);
AGS3::AudioChannel_SetRoomLocation(channel, xPos, yPos);
}
void AudioChannel::Stop(ScriptMethodParams &params) {
PARAMS1(ScriptAudioChannel *, channel);
AGS3::AudioChannel_Stop(channel);
}
void AudioChannel::GetID(ScriptMethodParams &params) {
PARAMS1(ScriptAudioChannel *, channel);
params._result = AGS3::AudioChannel_GetID(channel);
}
void AudioChannel::GetIsPlaying(ScriptMethodParams &params) {
PARAMS1(ScriptAudioChannel *, channel);
params._result = AGS3::AudioChannel_GetIsPlaying(channel);
}
void AudioChannel::GetLengthMs(ScriptMethodParams &params) {
PARAMS1(ScriptAudioChannel *, channel);
params._result = AGS3::AudioChannel_GetLengthMs(channel);
}
void AudioChannel::GetPanning(ScriptMethodParams &params) {
PARAMS1(ScriptAudioChannel *, channel);
params._result = AGS3::AudioChannel_GetPanning(channel);
}
void AudioChannel::SetPanning(ScriptMethodParams &params) {
PARAMS2(ScriptAudioChannel *, channel, int, newPanning);
AGS3::AudioChannel_SetPanning(channel, newPanning);
}
void AudioChannel::GetPlayingClip(ScriptMethodParams &params) {
PARAMS1(ScriptAudioChannel *, channel);
params._result = AGS3::AudioChannel_GetPlayingClip(channel);
}
void AudioChannel::GetPosition(ScriptMethodParams &params) {
PARAMS1(ScriptAudioChannel *, channel);
params._result = AGS3::AudioChannel_GetPosition(channel);
}
void AudioChannel::GetPositionMs(ScriptMethodParams &params) {
PARAMS1(ScriptAudioChannel *, channel);
params._result = AGS3::AudioChannel_GetPositionMs(channel);
}
void AudioChannel::GetVolume(ScriptMethodParams &params) {
PARAMS1(ScriptAudioChannel *, channel);
params._result = AGS3::AudioChannel_GetVolume(channel);
}
void AudioChannel::SetVolume(ScriptMethodParams &params) {
PARAMS2(ScriptAudioChannel *, channel, int, newVolume);
params._result = AGS3::AudioChannel_SetVolume(channel, newVolume);
}
} // namespace Core
} // namespace Plugins
} // namespace AGS3

View File

@ -0,0 +1,55 @@
/* ScummVM - Graphic Adventure Engine
*
* ScummVM is the legal property of its developers, whose names
* are too numerous to list here. Please refer to the COPYRIGHT
* file distributed with this source distribution.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
#ifndef AGS_PLUGINS_CORE_AUDIO_CHANNEL_H
#define AGS_PLUGINS_CORE_AUDIO_CHANNEL_H
#include "ags/plugins/plugin_base.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class AudioChannel : public ScriptContainer {
public:
static void AGS_EngineStartup(IAGSEngine *engine);
static void Seek(ScriptMethodParams &params);
static void SetRoomLocation(ScriptMethodParams &params);
static void Stop(ScriptMethodParams &params);
static void GetID(ScriptMethodParams &params);
static void GetIsPlaying(ScriptMethodParams &params);
static void GetLengthMs(ScriptMethodParams &params);
static void GetPanning(ScriptMethodParams &params);
static void SetPanning(ScriptMethodParams &params);
static void GetPlayingClip(ScriptMethodParams &params);
static void GetPosition(ScriptMethodParams &params);
static void GetPositionMs(ScriptMethodParams &params);
static void GetVolume(ScriptMethodParams &params);
static void SetVolume(ScriptMethodParams &params);
};
} // namespace Core
} // namespace Plugins
} // namespace AGS3
#endif

View File

@ -0,0 +1,77 @@
/* ScummVM - Graphic Adventure Engine
*
* ScummVM is the legal property of its developers, whose names
* are too numerous to list here. Please refer to the COPYRIGHT
* file distributed with this source distribution.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
#include "ags/plugins/core/audio_clip.h"
#include "ags/engine/ac/audio_clip.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
void AudioClip::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(AudioClip::Play^2, Play);
SCRIPT_METHOD_EXT(AudioClip::PlayFrom^3, PlayFrom);
SCRIPT_METHOD_EXT(AudioClip::PlayQueued^2, PlayQueued);
SCRIPT_METHOD_EXT(AudioClip::Stop^0, Stop);
SCRIPT_METHOD_EXT(AudioClip::get_FileType, GetFileType);
SCRIPT_METHOD_EXT(AudioClip::get_IsAvailable, GetIsAvailable);
SCRIPT_METHOD_EXT(AudioClip::get_Type, GetType);
}
void AudioClip::Play(ScriptMethodParams &params) {
PARAMS3(ScriptAudioClip *, clip, int, priority, int, repeat);
params._result = AGS3::AudioClip_Play(clip, priority, repeat);
}
void AudioClip::PlayFrom(ScriptMethodParams &params) {
PARAMS4(ScriptAudioClip *, clip, int, position, int, priority, int, repeat);
params._result = AGS3::AudioClip_PlayFrom(clip, position, priority, repeat);
}
void AudioClip::PlayQueued(ScriptMethodParams &params) {
PARAMS3(ScriptAudioClip *, clip, int, priority, int, repeat);
params._result = AGS3::AudioClip_PlayQueued(clip, priority, repeat);
}
void AudioClip::Stop(ScriptMethodParams &params) {
PARAMS1(ScriptAudioClip *, clip);
AGS3::AudioClip_Stop(clip);
}
void AudioClip::GetFileType(ScriptMethodParams &params) {
PARAMS1(ScriptAudioClip *, clip);
params._result = AGS3::AudioClip_GetFileType(clip);
}
void AudioClip::GetIsAvailable(ScriptMethodParams &params) {
PARAMS1(ScriptAudioClip *, clip);
params._result = AGS3::AudioClip_GetIsAvailable(clip);
}
void AudioClip::GetType(ScriptMethodParams &params) {
PARAMS1(ScriptAudioClip *, clip);
params._result = AGS3::AudioClip_GetType(clip);
}
} // namespace Core
} // namespace Plugins
} // namespace AGS3

View File

@ -0,0 +1,49 @@
/* ScummVM - Graphic Adventure Engine
*
* ScummVM is the legal property of its developers, whose names
* are too numerous to list here. Please refer to the COPYRIGHT
* file distributed with this source distribution.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
#ifndef AGS_PLUGINS_CORE_AUDIO_CLIP_H
#define AGS_PLUGINS_CORE_AUDIO_CLIP_H
#include "ags/plugins/plugin_base.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class AudioClip : public ScriptContainer {
public:
void AGS_EngineStartup(IAGSEngine *engine);
static void Play(ScriptMethodParams &params);
static void PlayFrom(ScriptMethodParams &params);
static void PlayQueued(ScriptMethodParams &params);
static void Stop(ScriptMethodParams &params);
static void GetFileType(ScriptMethodParams &params);
static void GetIsAvailable(ScriptMethodParams &params);
static void GetType(ScriptMethodParams &params);
};
} // namespace Core
} // namespace Plugins
} // namespace AGS3
#endif

View File

@ -0,0 +1,138 @@
/* ScummVM - Graphic Adventure Engine
*
* ScummVM is the legal property of its developers, whose names
* are too numerous to list here. Please refer to the COPYRIGHT
* file distributed with this source distribution.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
#include "ags/plugins/core/button.h"
#include "ags/engine/ac/button.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
void Button::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(Button::Animate^4, Animate);
SCRIPT_METHOD_EXT(Button::GetText^1, GetText);
SCRIPT_METHOD_EXT(Button::SetText^1, SetText);
SCRIPT_METHOD_EXT(Button::get_ClipImage, GetClipImage);
SCRIPT_METHOD_EXT(Button::set_ClipImage, SetClipImage);
SCRIPT_METHOD_EXT(Button::get_Font, GetFont);
SCRIPT_METHOD_EXT(Button::set_Font, SetFont);
SCRIPT_METHOD_EXT(Button::get_Graphic, GetGraphic);
SCRIPT_METHOD_EXT(Button::get_MouseOverGraphic, GetMouseOverGraphic);
SCRIPT_METHOD_EXT(Button::set_MouseOverGraphic, SetMouseOverGraphic);
SCRIPT_METHOD_EXT(Button::get_NormalGraphic, GetNormalGraphic);
SCRIPT_METHOD_EXT(Button::set_NormalGraphic, SetNormalGraphic);
SCRIPT_METHOD_EXT(Button::get_PushedGraphic, GetPushedGraphic);
SCRIPT_METHOD_EXT(Button::set_PushedGraphic, SetPushedGraphic);
SCRIPT_METHOD_EXT(Button::get_Text, GetText_New);
SCRIPT_METHOD_EXT(Button::set_Text, SetText);
SCRIPT_METHOD_EXT(Button::get_TextColor, GetTextColor);
SCRIPT_METHOD_EXT(Button::set_TextColor, SetTextColor);
}
void Button::Animate(ScriptMethodParams &params) {
PARAMS5(GUIButton *, butt, int, view, int, loop, int, speed, int, repeat);
AGS3::Button_Animate(butt, view, loop, speed, repeat);
}
void Button::GetText(ScriptMethodParams &params) {
PARAMS2(GUIButton *, butt, char *, buffer);
AGS3::Button_GetText(butt, buffer);
}
void Button::SetText(ScriptMethodParams &params) {
PARAMS2(GUIButton *, butt, const char *, newtx);
AGS3::Button_SetText(butt, newtx);
}
void Button::GetClipImage(ScriptMethodParams &params) {
PARAMS1(GUIButton *, butt);
params._result = AGS3::Button_GetClipImage(butt);
}
void Button::SetClipImage(ScriptMethodParams &params) {
PARAMS2(GUIButton *, butt, int, newval);
AGS3::Button_SetClipImage(butt, newval);
}
void Button::GetFont(ScriptMethodParams &params) {
PARAMS1(GUIButton *, butt);
params._result = AGS3::Button_GetFont(butt);
}
void Button::SetFont(ScriptMethodParams &params) {
PARAMS2(GUIButton *, butt, int, newFont);
AGS3::Button_SetFont(butt, newFont);
}
void Button::GetGraphic(ScriptMethodParams &params) {
PARAMS1(GUIButton *, butt);
params._result = AGS3::Button_GetGraphic(butt);
}
void Button::GetMouseOverGraphic(ScriptMethodParams &params) {
PARAMS1(GUIButton *, butt);
params._result = AGS3::Button_GetMouseOverGraphic(butt);
}
void Button::SetMouseOverGraphic(ScriptMethodParams &params) {
PARAMS2(GUIButton *, guil, int, slotn);
AGS3::Button_SetMouseOverGraphic(guil, slotn);
}
void Button::GetNormalGraphic(ScriptMethodParams &params) {
PARAMS1(GUIButton *, butt);
params._result = AGS3::Button_GetNormalGraphic(butt);
}
void Button::SetNormalGraphic(ScriptMethodParams &params) {
PARAMS2(GUIButton *, guil, int, slotn);
AGS3::Button_SetNormalGraphic(guil, slotn);
}
void Button::GetPushedGraphic(ScriptMethodParams &params) {
PARAMS1(GUIButton *, butt);
params._result = AGS3::Button_GetPushedGraphic(butt);
}
void Button::SetPushedGraphic(ScriptMethodParams &params) {
PARAMS2(GUIButton *, guil, int, slotn);
AGS3::Button_SetPushedGraphic(guil, slotn);
}
void Button::GetText_New(ScriptMethodParams &params) {
PARAMS1(GUIButton *, butt);
params._result = AGS3::Button_GetText_New(butt);
}
void Button::GetTextColor(ScriptMethodParams &params) {
PARAMS1(GUIButton *, butt);
params._result = AGS3::Button_GetTextColor(butt);
}
void Button::SetTextColor(ScriptMethodParams &params) {
PARAMS2(GUIButton *, butt, int, newcol);
AGS3::Button_SetTextColor(butt, newcol);
}
} // namespace Core
} // namespace Plugins
} // namespace AGS3

View File

@ -0,0 +1,59 @@
/* ScummVM - Graphic Adventure Engine
*
* ScummVM is the legal property of its developers, whose names
* are too numerous to list here. Please refer to the COPYRIGHT
* file distributed with this source distribution.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
#ifndef AGS_PLUGINS_CORE_BUTTON_H
#define AGS_PLUGINS_CORE_BUTTON_H
#include "ags/plugins/plugin_base.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class Button : public ScriptContainer {
public:
void AGS_EngineStartup(IAGSEngine *engine);
static void Animate(ScriptMethodParams &params);
static void GetText(ScriptMethodParams &params);
static void SetText(ScriptMethodParams &params);
static void GetClipImage(ScriptMethodParams &params);
static void SetClipImage(ScriptMethodParams &params);
static void GetFont(ScriptMethodParams &params);
static void SetFont(ScriptMethodParams &params);
static void GetGraphic(ScriptMethodParams &params);
static void GetMouseOverGraphic(ScriptMethodParams &params);
static void SetMouseOverGraphic(ScriptMethodParams &params);
static void GetNormalGraphic(ScriptMethodParams &params);
static void SetNormalGraphic(ScriptMethodParams &params);
static void GetPushedGraphic(ScriptMethodParams &params);
static void SetPushedGraphic(ScriptMethodParams &params);
static void GetText_New(ScriptMethodParams &params);
static void GetTextColor(ScriptMethodParams &params);
static void SetTextColor(ScriptMethodParams &params);
};
} // namespace Core
} // namespace Plugins
} // namespace AGS3
#endif

View File

@ -0,0 +1,801 @@
/* ScummVM - Graphic Adventure Engine
*
* ScummVM is the legal property of its developers, whose names
* are too numerous to list here. Please refer to the COPYRIGHT
* file distributed with this source distribution.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
#include "ags/plugins/core/character.h"
#include "ags/engine/ac/character.h"
#include "ags/engine/ac/global_character.h"
#include "ags/shared/ac/game_struct_defines.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
void Character::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(Character::AddInventory^2, AddInventory);
SCRIPT_METHOD_EXT(Character::AddWaypoint^2, AddWaypoint);
SCRIPT_METHOD_EXT(Character::Animate^5, Animate);
SCRIPT_METHOD_EXT(Character::ChangeRoom^3, ChangeRoom);
SCRIPT_METHOD_EXT(Character::ChangeRoomAutoPosition^2, ChangeRoomAutoPosition);
SCRIPT_METHOD_EXT(Character::ChangeView^1, ChangeView);
SCRIPT_METHOD_EXT(Character::FaceCharacter^2, FaceCharacter);
SCRIPT_METHOD_EXT(Character::FaceDirection^2, FaceDirection);
SCRIPT_METHOD_EXT(Character::FaceLocation^3, FaceLocation);
SCRIPT_METHOD_EXT(Character::FaceObject^2, FaceObject);
SCRIPT_METHOD_EXT(Character::FollowCharacter^3, FollowCharacter);
SCRIPT_METHOD_EXT(Character::GetProperty^1, GetProperty);
SCRIPT_METHOD_EXT(Character::GetPropertyText^2, GetPropertyText);
SCRIPT_METHOD_EXT(Character::GetTextProperty^1, GetTextProperty);
SCRIPT_METHOD_EXT(Character::HasInventory^1, HasInventory);
SCRIPT_METHOD_EXT(Character::IsCollidingWithChar^1, IsCollidingWithChar);
SCRIPT_METHOD_EXT(Character::IsCollidingWithObject^1, IsCollidingWithObject);
SCRIPT_METHOD_EXT(Character::LockView^1, LockView);
SCRIPT_METHOD_EXT(Character::LockView^2, LockViewEx);
if (engine->version < kScriptAPI_v341) {
SCRIPT_METHOD_EXT(Character::LockViewAligned^3, LockViewAligned_Old);
SCRIPT_METHOD_EXT(Character::LockViewAligned^4, LockViewAlignedEx_Old);
} else {
SCRIPT_METHOD_EXT(Character::LockViewAligned^3, LockViewAligned);
SCRIPT_METHOD_EXT(Character::LockViewAligned^4, LockViewAlignedEx);
}
SCRIPT_METHOD_EXT(Character::LockViewFrame^3, LockViewFrame);
SCRIPT_METHOD_EXT(Character::LockViewFrame^4, LockViewFrameEx);
SCRIPT_METHOD_EXT(Character::LockViewOffset^3, LockViewOffset);
SCRIPT_METHOD_EXT(Character::LockViewOffset^4, LockViewOffset);
SCRIPT_METHOD_EXT(Character::LoseInventory^1, LoseInventory);
SCRIPT_METHOD_EXT(Character::Move^4, Move);
SCRIPT_METHOD_EXT(Character::PlaceOnWalkableArea^0, PlaceOnWalkableArea);
SCRIPT_METHOD_EXT(Character::RemoveTint^0, RemoveTint);
SCRIPT_METHOD_EXT(Character::RunInteraction^1, RunInteraction);
SCRIPT_METHOD_EXT(Character::Say^101, ScPl_Say);
SCRIPT_METHOD_EXT(Character::SayAt^4, SayAt);
SCRIPT_METHOD_EXT(Character::SayBackground^1, SayBackground);
SCRIPT_METHOD_EXT(Character::SetAsPlayer^0, SetAsPlayer);
SCRIPT_METHOD_EXT(Character::SetIdleView^2, SetIdleView);
//SCRIPT_METHOD_EXT(Character::SetOption^2", (void*)SetOption);
SCRIPT_METHOD_EXT(Character::SetWalkSpeed^2, SetSpeed);
SCRIPT_METHOD_EXT(Character::StopMoving^0, StopMoving);
SCRIPT_METHOD_EXT(Character::Think^101, ScPl_Think);
SCRIPT_METHOD_EXT(Character::Tint^5, Tint);
SCRIPT_METHOD_EXT(Character::UnlockView^0, UnlockView);
SCRIPT_METHOD_EXT(Character::UnlockView^1, UnlockViewEx);
SCRIPT_METHOD_EXT(Character::Walk^4, Walk);
SCRIPT_METHOD_EXT(Character::WalkStraight^3, WalkStraight);
SCRIPT_METHOD_EXT(Character::GetAtRoomXY^2, GetCharacterAtRoom);
SCRIPT_METHOD_EXT(Character::GetAtScreenXY^2, GetCharacterAtScreen);
SCRIPT_METHOD_EXT(Character::get_ActiveInventory, GetActiveInventory);
SCRIPT_METHOD_EXT(Character::set_ActiveInventory, SetActiveInventory);
SCRIPT_METHOD_EXT(Character::get_Animating, GetAnimating);
SCRIPT_METHOD_EXT(Character::get_AnimationSpeed, GetAnimationSpeed);
SCRIPT_METHOD_EXT(Character::set_AnimationSpeed, SetAnimationSpeed);
SCRIPT_METHOD_EXT(Character::get_Baseline, GetBaseline);
SCRIPT_METHOD_EXT(Character::set_Baseline, SetBaseline);
SCRIPT_METHOD_EXT(Character::get_BlinkInterval, GetBlinkInterval);
SCRIPT_METHOD_EXT(Character::set_BlinkInterval, SetBlinkInterval);
SCRIPT_METHOD_EXT(Character::get_BlinkView, GetBlinkView);
SCRIPT_METHOD_EXT(Character::set_BlinkView, SetBlinkView);
SCRIPT_METHOD_EXT(Character::get_BlinkWhileThinking, GetBlinkWhileThinking);
SCRIPT_METHOD_EXT(Character::set_BlinkWhileThinking, SetBlinkWhileThinking);
SCRIPT_METHOD_EXT(Character::get_BlockingHeight, GetBlockingHeight);
SCRIPT_METHOD_EXT(Character::set_BlockingHeight, SetBlockingHeight);
SCRIPT_METHOD_EXT(Character::get_BlockingWidth, GetBlockingWidth);
SCRIPT_METHOD_EXT(Character::set_BlockingWidth, SetBlockingWidth);
SCRIPT_METHOD_EXT(Character::get_Clickable, GetClickable);
SCRIPT_METHOD_EXT(Character::set_Clickable, SetClickable);
SCRIPT_METHOD_EXT(Character::get_DestinationX, GetDestinationX);
SCRIPT_METHOD_EXT(Character::get_DestinationY, GetDestinationY);
SCRIPT_METHOD_EXT(Character::get_DiagonalLoops, GetDiagonalWalking);
SCRIPT_METHOD_EXT(Character::set_DiagonalLoops, SetDiagonalWalking);
SCRIPT_METHOD_EXT(Character::get_Frame, GetFrame);
SCRIPT_METHOD_EXT(Character::set_Frame, SetFrame);
if (engine->version < kScriptAPI_v341)
SCRIPT_METHOD_EXT(Character::get_HasExplicitTint, GetHasExplicitTint_Old);
else
SCRIPT_METHOD_EXT(Character::get_HasExplicitTint, GetHasExplicitTint);
SCRIPT_METHOD_EXT(Character::get_ID, GetID);
SCRIPT_METHOD_EXT(Character::get_IdleView, GetIdleView);
SCRIPT_METHOD_EXT(Character::geti_InventoryQuantity, GetIInventoryQuantity);
SCRIPT_METHOD_EXT(Character::seti_InventoryQuantity, SetIInventoryQuantity);
SCRIPT_METHOD_EXT(Character::get_IgnoreLighting, GetIgnoreLighting);
SCRIPT_METHOD_EXT(Character::set_IgnoreLighting, SetIgnoreLighting);
SCRIPT_METHOD_EXT(Character::get_IgnoreScaling, GetIgnoreScaling);
SCRIPT_METHOD_EXT(Character::set_IgnoreScaling, SetIgnoreScaling);
SCRIPT_METHOD_EXT(Character::get_IgnoreWalkbehinds, GetIgnoreWalkbehinds);
SCRIPT_METHOD_EXT(Character::set_IgnoreWalkbehinds, SetIgnoreWalkbehinds);
SCRIPT_METHOD_EXT(Character::get_Loop, GetLoop);
SCRIPT_METHOD_EXT(Character::set_Loop, SetLoop);
SCRIPT_METHOD_EXT(Character::get_ManualScaling, GetIgnoreScaling);
SCRIPT_METHOD_EXT(Character::set_ManualScaling, SetManualScaling);
SCRIPT_METHOD_EXT(Character::get_MovementLinkedToAnimation, GetMovementLinkedToAnimation);
SCRIPT_METHOD_EXT(Character::set_MovementLinkedToAnimation, SetMovementLinkedToAnimation);
SCRIPT_METHOD_EXT(Character::get_Moving, GetMoving);
SCRIPT_METHOD_EXT(Character::get_Name, GetName);
SCRIPT_METHOD_EXT(Character::set_Name, SetName);
SCRIPT_METHOD_EXT(Character::get_NormalView, GetNormalView);
SCRIPT_METHOD_EXT(Character::get_PreviousRoom, GetPreviousRoom);
SCRIPT_METHOD_EXT(Character::get_Room, GetRoom);
SCRIPT_METHOD_EXT(Character::get_ScaleMoveSpeed, GetScaleMoveSpeed);
SCRIPT_METHOD_EXT(Character::set_ScaleMoveSpeed, SetScaleMoveSpeed);
SCRIPT_METHOD_EXT(Character::get_ScaleVolume, GetScaleVolume);
SCRIPT_METHOD_EXT(Character::set_ScaleVolume, SetScaleVolume);
SCRIPT_METHOD_EXT(Character::get_Scaling, GetScaling);
SCRIPT_METHOD_EXT(Character::set_Scaling, SetScaling);
SCRIPT_METHOD_EXT(Character::get_Solid, GetSolid);
SCRIPT_METHOD_EXT(Character::set_Solid, SetSolid);
SCRIPT_METHOD_EXT(Character::get_Speaking, GetSpeaking);
SCRIPT_METHOD_EXT(Character::get_SpeakingFrame, GetSpeakingFrame);
SCRIPT_METHOD_EXT(Character::get_SpeechAnimationDelay, GetCharacterSpeechAnimationDelay);
SCRIPT_METHOD_EXT(Character::set_SpeechAnimationDelay, SetSpeechAnimationDelay);
SCRIPT_METHOD_EXT(Character::get_SpeechColor, GetSpeechColor);
SCRIPT_METHOD_EXT(Character::set_SpeechColor, SetSpeechColor);
SCRIPT_METHOD_EXT(Character::get_SpeechView, GetSpeechView);
SCRIPT_METHOD_EXT(Character::set_SpeechView, SetSpeechView);
SCRIPT_METHOD_EXT(Character::get_ThinkView, GetThinkView);
SCRIPT_METHOD_EXT(Character::set_ThinkView, SetThinkView);
SCRIPT_METHOD_EXT(Character::get_Transparency, GetTransparency);
SCRIPT_METHOD_EXT(Character::set_Transparency, SetTransparency);
SCRIPT_METHOD_EXT(Character::get_TurnBeforeWalking, GetTurnBeforeWalking);
SCRIPT_METHOD_EXT(Character::set_TurnBeforeWalking, SetTurnBeforeWalking);
SCRIPT_METHOD_EXT(Character::get_View, GetView);
SCRIPT_METHOD_EXT(Character::get_WalkSpeedX, GetWalkSpeedX);
SCRIPT_METHOD_EXT(Character::get_WalkSpeedY, GetWalkSpeedY);
SCRIPT_METHOD_EXT(Character::get_X, GetX);
SCRIPT_METHOD_EXT(Character::set_X, SetX);
SCRIPT_METHOD_EXT(Character::get_x, GetX);
SCRIPT_METHOD_EXT(Character::set_x, SetX);
SCRIPT_METHOD_EXT(Character::get_Y, GetY);
SCRIPT_METHOD_EXT(Character::set_Y, SetY);
SCRIPT_METHOD_EXT(Character::get_y, GetY);
SCRIPT_METHOD_EXT(Character::set_y, SetY);
SCRIPT_METHOD_EXT(Character::get_Z, GetZ);
SCRIPT_METHOD_EXT(Character::set_Z, SetZ);
SCRIPT_METHOD_EXT(Character::get_z, GetZ);
SCRIPT_METHOD_EXT(Character::set_z, SetZ);
}
void Character::AddInventory(ScriptMethodParams &params) {
PARAMS3(CharacterInfo *, chaa, ScriptInvItem *, invi, int, addIndex);
AGS3::Character_AddInventory(chaa, invi, addIndex);
}
void Character::AddWaypoint(ScriptMethodParams &params) {
PARAMS3(CharacterInfo *, chaa, int, x, int, y);
AGS3::Character_AddWaypoint(chaa, x, y);
}
void Character::Animate(ScriptMethodParams &params) {
PARAMS6(CharacterInfo *, chaa, int, loop, int, delay, int, repeat, int, blocking, int, direction);
AGS3::Character_Animate(chaa, loop, delay, repeat, blocking, direction);
}
void Character::ChangeRoom(ScriptMethodParams &params) {
PARAMS4(CharacterInfo *, chaa, int, room, int, x, int, y);
AGS3::Character_ChangeRoom(chaa, room, x, y);
}
void Character::ChangeRoomAutoPosition(ScriptMethodParams &params) {
PARAMS3(CharacterInfo *, chaa, int, room, int, newPos);
AGS3::Character_ChangeRoomAutoPosition(chaa, room, newPos);
}
void Character::ChangeView(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chap, int, vii);
AGS3::Character_ChangeView(chap, vii);
}
void Character::FaceCharacter(ScriptMethodParams &params) {
PARAMS3(CharacterInfo *, char1, CharacterInfo *, char2, int, blockingStyle);
AGS3::Character_FaceCharacter(char1, char2, blockingStyle);
}
void Character::FaceDirection(ScriptMethodParams &params) {
PARAMS3(CharacterInfo *, char1, int, direction, int, blockingStyle);
AGS3::Character_FaceDirection(char1, direction, blockingStyle);
}
void Character::FaceLocation(ScriptMethodParams &params) {
PARAMS4(CharacterInfo *, char1, int, xx, int, yy, int, blockingStyle);
AGS3::Character_FaceLocation(char1, xx, yy, blockingStyle);
}
void Character::FaceObject(ScriptMethodParams &params) {
PARAMS3(CharacterInfo *, char1, ScriptObject *, obj, int, blockingStyle);
AGS3::Character_FaceObject(char1, obj, blockingStyle);
}
void Character::FollowCharacter(ScriptMethodParams &params) {
PARAMS4(CharacterInfo *, chaa, CharacterInfo *, tofollow, int, distaway, int, eagerness);
AGS3::Character_FollowCharacter(chaa, tofollow, distaway, eagerness);
}
void Character::GetProperty(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, const char *, property);
params._result = AGS3::Character_GetProperty(chaa, property);
}
void Character::GetPropertyText(ScriptMethodParams &params) {
PARAMS3(CharacterInfo *, chaa, const char *, property, char *, buffer);
AGS3::Character_GetPropertyText(chaa, property, buffer);
}
void Character::GetTextProperty(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, const char *, property);
params._result = AGS3::Character_GetTextProperty(chaa, property);
}
void Character::HasInventory(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, ScriptInvItem *, invi);
params._result = AGS3::Character_HasInventory(chaa, invi);
}
void Character::IsCollidingWithChar(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, char1, CharacterInfo *, char2);
params._result = AGS3::Character_IsCollidingWithChar(char1, char2);
}
void Character::IsCollidingWithObject(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chin, ScriptObject *, objid);
params._result = AGS3::Character_IsCollidingWithObject(chin, objid);
}
void Character::LockView(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chap, int, vii);
AGS3::Character_LockView(chap, vii);
}
void Character::LockViewEx(ScriptMethodParams &params) {
PARAMS3(CharacterInfo *, chap, int, vii, int, stopMoving);
AGS3::Character_LockViewEx(chap, vii, stopMoving);
}
void Character::LockViewAligned_Old(ScriptMethodParams &params) {
PARAMS4(CharacterInfo *, chap, int, vii, int, loop, int, align);
AGS3::Character_LockViewAligned_Old(chap, vii, loop, align);
}
void Character::LockViewAlignedEx_Old(ScriptMethodParams &params) {
PARAMS5(CharacterInfo *, chap, int, vii, int, loop, int, align, int, stopMoving);
AGS3::Character_LockViewAlignedEx_Old(chap, vii, loop, align, stopMoving);
}
void Character::LockViewAligned(ScriptMethodParams &params) {
PARAMS4(CharacterInfo *, chap, int, vii, int, loop, int, align);
AGS3::Character_LockViewAligned(chap, vii, loop, align);
}
void Character::LockViewAlignedEx(ScriptMethodParams &params) {
PARAMS5(CharacterInfo *, chap, int, vii, int, loop, int, align, int, stopMoving);
AGS3::Character_LockViewAlignedEx(chap, vii, loop, align, stopMoving);
}
void Character::LockViewFrame(ScriptMethodParams &params) {
PARAMS4(CharacterInfo *, chaa, int, view, int, loop, int, frame);
AGS3::Character_LockViewFrame(chaa, view, loop, frame);
}
void Character::LockViewFrameEx(ScriptMethodParams &params) {
PARAMS5(CharacterInfo *, chaa, int, view, int, loop, int, frame, int, stopMoving);
AGS3::Character_LockViewFrameEx(chaa, view, loop, frame, stopMoving);
}
void Character::LockViewOffset(ScriptMethodParams &params) {
PARAMS4(CharacterInfo *, chap, int, vii, int, xoffs, int, yoffs);
AGS3::Character_LockViewOffset(chap, vii, xoffs, yoffs);
}
void Character::LoseInventory(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chap, ScriptInvItem *, invi);
AGS3::Character_LoseInventory(chap, invi);
}
void Character::Move(ScriptMethodParams &params) {
PARAMS5(CharacterInfo *, chaa, int, x, int, y, int, blocking, int, direct);
AGS3::Character_Move(chaa, x, y, blocking, direct);
}
void Character::PlaceOnWalkableArea(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chap);
AGS3::Character_PlaceOnWalkableArea(chap);
}
void Character::RemoveTint(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
AGS3::Character_RemoveTint(chaa);
}
void Character::RunInteraction(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, mood);
AGS3::Character_RunInteraction(chaa, mood);
}
void Character::ScPl_Say(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
Common::String texx = params.format(1);
AGS3::Character_Say(chaa, texx.c_str());
}
void Character::SayAt(ScriptMethodParams &params) {
PARAMS5(CharacterInfo *, chaa, int, x, int, y, int, width, const char *, texx);
AGS3::Character_SayAt(chaa, x, y, width, texx);
}
void Character::SayBackground(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, const char *, texx);
params._result = AGS3::Character_SayBackground(chaa, texx);
}
void Character::SetAsPlayer(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
AGS3::Character_SetAsPlayer(chaa);
}
void Character::SetIdleView(ScriptMethodParams &params) {
PARAMS3(CharacterInfo *, chaa, int, iview, int, itime);
AGS3::Character_SetIdleView(chaa, iview, itime);
}
void Character::SetSpeed(ScriptMethodParams &params) {
PARAMS3(CharacterInfo *, chaa, int, xspeed, int, yspeed);
AGS3::Character_SetSpeed(chaa, xspeed, yspeed);
}
void Character::StopMoving(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, charp);
AGS3::Character_StopMoving(charp);
}
void Character::ScPl_Think(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
Common::String texx = params.format(1);
AGS3::Character_Think(chaa, texx.c_str());
}
void Character::Tint(ScriptMethodParams &params) {
PARAMS6(CharacterInfo *, chaa, int, red, int, green, int, blue, int, opacity, int, luminance);
AGS3::Character_Tint(chaa, red, green, blue, opacity, luminance);
}
void Character::UnlockView(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
AGS3::Character_UnlockView(chaa);
}
void Character::UnlockViewEx(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, stopMoving);
AGS3::Character_UnlockViewEx(chaa, stopMoving);
}
void Character::Walk(ScriptMethodParams &params) {
PARAMS5(CharacterInfo *, chaa, int, x, int, y, int, blocking, int, direct);
AGS3::Character_Walk(chaa, x, y, blocking, direct);
}
void Character::WalkStraight(ScriptMethodParams &params) {
PARAMS4(CharacterInfo *, chaa, int, xx, int, yy, int, blocking);
AGS3::Character_WalkStraight(chaa, xx, yy, blocking);
}
void Character::GetCharacterAtRoom(ScriptMethodParams &params) {
PARAMS2(int, x, int, y);
params._result = AGS3::GetCharacterAtRoom(x, y);
}
void Character::GetCharacterAtScreen(ScriptMethodParams &params) {
PARAMS2(int, x, int, y);
params._result = AGS3::GetCharacterAtScreen(x, y);
}
void Character::GetActiveInventory(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetActiveInventory(chaa);
}
void Character::SetActiveInventory(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, ScriptInvItem *, iit);
AGS3::Character_SetActiveInventory(chaa, iit);
}
void Character::GetAnimating(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetAnimating(chaa);
}
void Character::GetAnimationSpeed(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetAnimationSpeed(chaa);
}
void Character::SetAnimationSpeed(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, newval);
AGS3::Character_SetAnimationSpeed(chaa, newval);
}
void Character::GetBaseline(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetBaseline(chaa);
}
void Character::SetBaseline(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, basel);
AGS3::Character_SetBaseline(chaa, basel);
}
void Character::GetBlinkInterval(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetBlinkInterval(chaa);
}
void Character::SetBlinkInterval(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, interval);
AGS3::Character_SetBlinkInterval(chaa, interval);
}
void Character::GetBlinkView(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetBlinkView(chaa);
}
void Character::SetBlinkView(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, vii);
AGS3::Character_SetBlinkView(chaa, vii);
}
void Character::GetBlinkWhileThinking(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetBlinkWhileThinking(chaa);
}
void Character::SetBlinkWhileThinking(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, yesOrNo);
AGS3::Character_SetBlinkWhileThinking(chaa, yesOrNo);
}
void Character::GetBlockingHeight(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetBlockingHeight(chaa);
}
void Character::SetBlockingHeight(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, hit);
AGS3::Character_SetBlockingHeight(chaa, hit);
}
void Character::GetBlockingWidth(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetBlockingWidth(chaa);
}
void Character::SetBlockingWidth(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, wid);
AGS3::Character_SetBlockingWidth(chaa, wid);
}
void Character::GetClickable(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetClickable(chaa);
}
void Character::SetClickable(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, clik);
AGS3::Character_SetClickable(chaa, clik);
}
void Character::GetDestinationX(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetDestinationX(chaa);
}
void Character::GetDestinationY(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetDestinationX(chaa);
}
void Character::GetDiagonalWalking(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetDiagonalWalking(chaa);
}
void Character::SetDiagonalWalking(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, yesOrNo);
AGS3::Character_SetDiagonalWalking(chaa, yesOrNo);
}
void Character::GetFrame(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetFrame(chaa);
}
void Character::SetFrame(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, newVal);
AGS3::Character_SetFrame(chaa, newVal);
}
void Character::GetHasExplicitTint_Old(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetHasExplicitTint_Old(chaa);
}
void Character::GetHasExplicitTint(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetHasExplicitTint(chaa);
}
void Character::GetID(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetID(chaa);
}
void Character::GetIdleView(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetIdleView(chaa);
}
void Character::GetIInventoryQuantity(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, index);
params._result = AGS3::Character_GetIInventoryQuantity(chaa, index);
}
void Character::SetIInventoryQuantity(ScriptMethodParams &params) {
PARAMS3(CharacterInfo *, chaa, int, index, int, quant);
AGS3::Character_SetIInventoryQuantity(chaa, index, quant);
}
void Character::GetIgnoreLighting(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetIgnoreLighting(chaa);
}
void Character::SetIgnoreLighting(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, yesOrNo);
AGS3::Character_SetIgnoreLighting(chaa, yesOrNo);
}
void Character::GetIgnoreScaling(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetIgnoreScaling(chaa);
}
void Character::SetIgnoreScaling(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, yesOrNo);
AGS3::Character_SetIgnoreScaling(chaa, yesOrNo);
}
void Character::GetIgnoreWalkbehinds(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetIgnoreWalkbehinds(chaa);
}
void Character::SetIgnoreWalkbehinds(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, yesOrNo);
AGS3::Character_SetIgnoreWalkbehinds(chaa, yesOrNo);
}
void Character::GetLoop(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetLoop(chaa);
}
void Character::SetLoop(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, newVal);
AGS3::Character_SetLoop(chaa, newVal);
}
void Character::SetManualScaling(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, yesOrNo);
AGS3::Character_SetManualScaling(chaa, yesOrNo);
}
void Character::GetMovementLinkedToAnimation(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetMovementLinkedToAnimation(chaa);
}
void Character::SetMovementLinkedToAnimation(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, yesOrNo);
AGS3::Character_SetMovementLinkedToAnimation(chaa, yesOrNo);
}
void Character::GetMoving(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetMoving(chaa);
}
void Character::GetName(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetName(chaa);
}
void Character::SetName(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, const char *, newName);
AGS3::Character_SetName(chaa, newName);
}
void Character::GetNormalView(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetNormalView(chaa);
}
void Character::GetPreviousRoom(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetPreviousRoom(chaa);
}
void Character::GetRoom(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetRoom(chaa);
}
void Character::GetScaleMoveSpeed(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetScaleMoveSpeed(chaa);
}
void Character::SetScaleMoveSpeed(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, yesOrNo);
AGS3::Character_SetScaleMoveSpeed(chaa, yesOrNo);
}
void Character::GetScaleVolume(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetScaleVolume(chaa);
}
void Character::SetScaleVolume(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, yesOrNo);
AGS3::Character_SetScaleVolume(chaa, yesOrNo);
}
void Character::GetScaling(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetScaling(chaa);
}
void Character::SetScaling(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, zoomLevel);
AGS3::Character_SetScaling(chaa, zoomLevel);
}
void Character::GetSolid(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetSolid(chaa);
}
void Character::SetSolid(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, yesOrNo);
AGS3::Character_SetSolid(chaa, yesOrNo);
}
void Character::GetSpeaking(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetSpeaking(chaa);
}
void Character::GetSpeakingFrame(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetSpeakingFrame(chaa);
}
void Character::GetCharacterSpeechAnimationDelay(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::GetCharacterSpeechAnimationDelay(chaa);
}
void Character::SetSpeechAnimationDelay(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, newDelay);
AGS3::Character_SetSpeechAnimationDelay(chaa, newDelay);
}
void Character::GetSpeechColor(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetSpeechColor(chaa);
}
void Character::SetSpeechColor(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, ncol);
AGS3::Character_SetSpeechColor(chaa, ncol);
}
void Character::GetSpeechView(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetSpeechView(chaa);
}
void Character::SetSpeechView(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, vii);
AGS3::Character_SetSpeechView(chaa, vii);
}
void Character::GetThinkView(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetThinkView(chaa);
}
void Character::SetThinkView(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, vii);
AGS3::Character_SetThinkView(chaa, vii);
}
void Character::GetTransparency(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetTransparency(chaa);
}
void Character::SetTransparency(ScriptMethodParams &params) {
}
void Character::GetTurnBeforeWalking(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetTurnBeforeWalking(chaa);
}
void Character::SetTurnBeforeWalking(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, yesOrNo);
AGS3::Character_SetTurnBeforeWalking(chaa, yesOrNo);
}
void Character::GetView(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetView(chaa);
}
void Character::GetWalkSpeedX(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetWalkSpeedX(chaa);
}
void Character::GetWalkSpeedY(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetWalkSpeedY(chaa);
}
void Character::GetX(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetX(chaa);
}
void Character::SetX(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, newVal);
AGS3::Character_SetX(chaa, newVal);
}
void Character::GetY(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetY(chaa);
}
void Character::SetY(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, newVal);
AGS3::Character_SetY(chaa, newVal);
}
void Character::GetZ(ScriptMethodParams &params) {
PARAMS1(CharacterInfo *, chaa);
params._result = AGS3::Character_GetZ(chaa);
}
void Character::SetZ(ScriptMethodParams &params) {
PARAMS2(CharacterInfo *, chaa, int, newVal);
AGS3::Character_SetZ(chaa, newVal);
}
} // namespace Core
} // namespace Plugins
} // namespace AGS3

View File

@ -0,0 +1,167 @@
/* ScummVM - Graphic Adventure Engine
*
* ScummVM is the legal property of its developers, whose names
* are too numerous to list here. Please refer to the COPYRIGHT
* file distributed with this source distribution.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
#ifndef AGS_PLUGINS_CORE_CHARACTER_H
#define AGS_PLUGINS_CORE_CHARACTER_H
#include "ags/plugins/plugin_base.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class Character : public ScriptContainer {
public:
void AGS_EngineStartup(IAGSEngine *engine);
static void AddInventory(ScriptMethodParams &params);
static void AddWaypoint(ScriptMethodParams &params);
static void Animate(ScriptMethodParams &params);
static void ChangeRoom(ScriptMethodParams &params);
static void ChangeRoomAutoPosition(ScriptMethodParams &params);
static void ChangeView(ScriptMethodParams &params);
static void FaceCharacter(ScriptMethodParams &params);
static void FaceDirection(ScriptMethodParams &params);
static void FaceLocation(ScriptMethodParams &params);
static void FaceObject(ScriptMethodParams &params);
static void FollowCharacter(ScriptMethodParams &params);
static void GetProperty(ScriptMethodParams &params);
static void GetPropertyText(ScriptMethodParams &params);
static void GetTextProperty(ScriptMethodParams &params);
static void HasInventory(ScriptMethodParams &params);
static void IsCollidingWithChar(ScriptMethodParams &params);
static void IsCollidingWithObject(ScriptMethodParams &params);
static void LockView(ScriptMethodParams &params);
static void LockViewEx(ScriptMethodParams &params);
static void LockViewAligned_Old(ScriptMethodParams &params);
static void LockViewAlignedEx_Old(ScriptMethodParams &params);
static void LockViewAligned(ScriptMethodParams &params);
static void LockViewAlignedEx(ScriptMethodParams &params);
static void LockViewFrame(ScriptMethodParams &params);
static void LockViewFrameEx(ScriptMethodParams &params);
static void LockViewOffset(ScriptMethodParams &params);
static void LoseInventory(ScriptMethodParams &params);
static void Move(ScriptMethodParams &params);
static void PlaceOnWalkableArea(ScriptMethodParams &params);
static void RemoveTint(ScriptMethodParams &params);
static void RunInteraction(ScriptMethodParams &params);
static void ScPl_Say(ScriptMethodParams &params);
static void SayAt(ScriptMethodParams &params);
static void SayBackground(ScriptMethodParams &params);
static void SetAsPlayer(ScriptMethodParams &params);
static void SetIdleView(ScriptMethodParams &params);
static void SetSpeed(ScriptMethodParams &params);
static void StopMoving(ScriptMethodParams &params);
static void ScPl_Think(ScriptMethodParams &params);
static void Tint(ScriptMethodParams &params);
static void UnlockView(ScriptMethodParams &params);
static void UnlockViewEx(ScriptMethodParams &params);
static void Walk(ScriptMethodParams &params);
static void WalkStraight(ScriptMethodParams &params);
static void GetCharacterAtRoom(ScriptMethodParams &params);
static void GetCharacterAtScreen(ScriptMethodParams &params);
static void GetActiveInventory(ScriptMethodParams &params);
static void SetActiveInventory(ScriptMethodParams &params);
static void GetAnimating(ScriptMethodParams &params);
static void GetAnimationSpeed(ScriptMethodParams &params);
static void SetAnimationSpeed(ScriptMethodParams &params);
static void GetBaseline(ScriptMethodParams &params);
static void SetBaseline(ScriptMethodParams &params);
static void GetBlinkInterval(ScriptMethodParams &params);
static void SetBlinkInterval(ScriptMethodParams &params);
static void GetBlinkView(ScriptMethodParams &params);
static void SetBlinkView(ScriptMethodParams &params);
static void GetBlinkWhileThinking(ScriptMethodParams &params);
static void SetBlinkWhileThinking(ScriptMethodParams &params);
static void GetBlockingHeight(ScriptMethodParams &params);
static void SetBlockingHeight(ScriptMethodParams &params);
static void GetBlockingWidth(ScriptMethodParams &params);
static void SetBlockingWidth(ScriptMethodParams &params);
static void GetClickable(ScriptMethodParams &params);
static void SetClickable(ScriptMethodParams &params);
static void GetDestinationX(ScriptMethodParams &params);
static void GetDestinationY(ScriptMethodParams &params);
static void GetDiagonalWalking(ScriptMethodParams &params);
static void SetDiagonalWalking(ScriptMethodParams &params);
static void GetFrame(ScriptMethodParams &params);
static void SetFrame(ScriptMethodParams &params);
static void GetHasExplicitTint_Old(ScriptMethodParams &params);
static void GetHasExplicitTint(ScriptMethodParams &params);
static void GetID(ScriptMethodParams &params);
static void GetIdleView(ScriptMethodParams &params);
static void GetIInventoryQuantity(ScriptMethodParams &params);
static void SetIInventoryQuantity(ScriptMethodParams &params);
static void GetIgnoreLighting(ScriptMethodParams &params);
static void SetIgnoreLighting(ScriptMethodParams &params);
static void GetIgnoreScaling(ScriptMethodParams &params);
static void SetIgnoreScaling(ScriptMethodParams &params);
static void GetIgnoreWalkbehinds(ScriptMethodParams &params);
static void SetIgnoreWalkbehinds(ScriptMethodParams &params);
static void GetLoop(ScriptMethodParams &params);
static void SetLoop(ScriptMethodParams &params);
static void SetManualScaling(ScriptMethodParams &params);
static void GetMovementLinkedToAnimation(ScriptMethodParams &params);
static void SetMovementLinkedToAnimation(ScriptMethodParams &params);
static void GetMoving(ScriptMethodParams &params);
static void GetName(ScriptMethodParams &params);
static void SetName(ScriptMethodParams &params);
static void GetNormalView(ScriptMethodParams &params);
static void GetPreviousRoom(ScriptMethodParams &params);
static void GetRoom(ScriptMethodParams &params);
static void GetScaleMoveSpeed(ScriptMethodParams &params);
static void SetScaleMoveSpeed(ScriptMethodParams &params);
static void GetScaleVolume(ScriptMethodParams &params);
static void SetScaleVolume(ScriptMethodParams &params);
static void GetScaling(ScriptMethodParams &params);
static void SetScaling(ScriptMethodParams &params);
static void GetSolid(ScriptMethodParams &params);
static void SetSolid(ScriptMethodParams &params);
static void GetSpeaking(ScriptMethodParams &params);
static void GetSpeakingFrame(ScriptMethodParams &params);
static void GetCharacterSpeechAnimationDelay(ScriptMethodParams &params);
static void SetSpeechAnimationDelay(ScriptMethodParams &params);
static void GetSpeechColor(ScriptMethodParams &params);
static void SetSpeechColor(ScriptMethodParams &params);
static void GetSpeechView(ScriptMethodParams &params);
static void SetSpeechView(ScriptMethodParams &params);
static void GetThinkView(ScriptMethodParams &params);
static void SetThinkView(ScriptMethodParams &params);
static void GetTransparency(ScriptMethodParams &params);
static void SetTransparency(ScriptMethodParams &params);
static void GetTurnBeforeWalking(ScriptMethodParams &params);
static void SetTurnBeforeWalking(ScriptMethodParams &params);
static void GetView(ScriptMethodParams &params);
static void GetWalkSpeedX(ScriptMethodParams &params);
static void GetWalkSpeedY(ScriptMethodParams &params);
static void GetX(ScriptMethodParams &params);
static void SetX(ScriptMethodParams &params);
static void GetY(ScriptMethodParams &params);
static void SetY(ScriptMethodParams &params);
static void GetZ(ScriptMethodParams &params);
static void SetZ(ScriptMethodParams &params);
};
} // namespace Core
} // namespace Plugins
} // namespace AGS3
#endif

View File

@ -27,7 +27,15 @@ namespace Plugins {
namespace Core {
void EngineExports::AGS_EngineStartup(IAGSEngine *engine) {
_audioChannel.AGS_EngineStartup(engine);
_audioClip.AGS_EngineStartup(engine);
_button.AGS_EngineStartup(engine);
_character.AGS_EngineStartup(engine);
_dateTime.AGS_EngineStartup(engine);
_dialog.AGS_EngineStartup(engine);
_dialogOptionsRenderingInfo.AGS_EngineStartup(engine);
_drawingSurface.AGS_EngineStartup(engine);
_dynamicSprite.AGS_EngineStartup(engine);
}
} // namespace Core

View File

@ -23,7 +23,15 @@
#ifndef AGS_PLUGINS_CORE_CORE_H
#define AGS_PLUGINS_CORE_CORE_H
#include "ags/plugins/core/audio_channel.h"
#include "ags/plugins/core/audio_clip.h"
#include "ags/plugins/core/button.h"
#include "ags/plugins/core/character.h"
#include "ags/plugins/core/date_time.h"
#include "ags/plugins/core/dialog.h"
#include "ags/plugins/core/dialog_options_rendering_info.h"
#include "ags/plugins/core/drawing_surface.h"
#include "ags/plugins/core/dynamic_sprite.h"
namespace AGS3 {
namespace Plugins {
@ -31,7 +39,15 @@ namespace Core {
class EngineExports {
private:
AudioChannel _audioChannel;
AudioClip _audioClip;
Button _button;
Character _character;
DateTime _dateTime;
Dialog _dialog;
DialogOptionsRenderingInfo _dialogOptionsRenderingInfo;
DrawingSurface _drawingSurface;
DynamicSprite _dynamicSprite;
public:
void AGS_EngineStartup(IAGSEngine *engine);

View File

@ -0,0 +1,82 @@
/* ScummVM - Graphic Adventure Engine
*
* ScummVM is the legal property of its developers, whose names
* are too numerous to list here. Please refer to the COPYRIGHT
* file distributed with this source distribution.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
#include "ags/plugins/core/date_time.h"
#include "ags/engine/ac/date_time.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
void DateTime::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(DateTime::get_Now, Now);
SCRIPT_METHOD_EXT(DateTime::get_DayOfMonth, GetDayOfMonth);
SCRIPT_METHOD_EXT(DateTime::get_Hour, GetHour);
SCRIPT_METHOD_EXT(DateTime::get_Minute, GetMinute);
SCRIPT_METHOD_EXT(DateTime::get_Month, GetMonth);
SCRIPT_METHOD_EXT(DateTime::get_RawTime, GetRawTime);
SCRIPT_METHOD_EXT(DateTime::get_Second, GetSecond);
SCRIPT_METHOD_EXT(DateTime::get_Year, GetYear);
}
void DateTime::Now(ScriptMethodParams &params) {
params._result = AGS3::DateTime_Now();
}
void DateTime::GetDayOfMonth(ScriptMethodParams &params) {
PARAMS1(ScriptDateTime *, sdt);
params._result = AGS3::DateTime_GetDayOfMonth(sdt);
}
void DateTime::GetHour(ScriptMethodParams &params) {
PARAMS1(ScriptDateTime *, sdt);
params._result = AGS3::DateTime_GetHour(sdt);
}
void DateTime::GetMinute(ScriptMethodParams &params) {
PARAMS1(ScriptDateTime *, sdt);
params._result = AGS3::DateTime_GetMinute(sdt);
}
void DateTime::GetMonth(ScriptMethodParams &params) {
PARAMS1(ScriptDateTime *, sdt);
params._result = AGS3::DateTime_GetMonth(sdt);
}
void DateTime::GetRawTime(ScriptMethodParams &params) {
PARAMS1(ScriptDateTime *, sdt);
params._result = AGS3::DateTime_GetRawTime(sdt);
}
void DateTime::GetSecond(ScriptMethodParams &params) {
PARAMS1(ScriptDateTime *, sdt);
params._result = AGS3::DateTime_GetSecond(sdt);
}
void DateTime::GetYear(ScriptMethodParams &params) {
PARAMS1(ScriptDateTime *, sdt);
params._result = AGS3::DateTime_GetYear(sdt);
}
} // namespace Core
} // namespace Plugins
} // namespace AGS3

View File

@ -0,0 +1,50 @@
/* ScummVM - Graphic Adventure Engine
*
* ScummVM is the legal property of its developers, whose names
* are too numerous to list here. Please refer to the COPYRIGHT
* file distributed with this source distribution.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
#ifndef AGS_PLUGINS_CORE_DATE_TIME_H
#define AGS_PLUGINS_CORE_DATE_TIME_H
#include "ags/plugins/plugin_base.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class DateTime : public ScriptContainer {
public:
void AGS_EngineStartup(IAGSEngine *engine);
static void Now(ScriptMethodParams &params);
static void GetDayOfMonth(ScriptMethodParams &params);
static void GetHour(ScriptMethodParams &params);
static void GetMinute(ScriptMethodParams &params);
static void GetMonth(ScriptMethodParams &params);
static void GetRawTime(ScriptMethodParams &params);
static void GetSecond(ScriptMethodParams &params);
static void GetYear(ScriptMethodParams &params);
};
} // namespace Core
} // namespace Plugins
} // namespace AGS3
#endif

View File

@ -0,0 +1,89 @@
/* ScummVM - Graphic Adventure Engine
*
* ScummVM is the legal property of its developers, whose names
* are too numerous to list here. Please refer to the COPYRIGHT
* file distributed with this source distribution.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
#include "ags/plugins/core/dialog.h"
#include "ags/engine/ac/dialog.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
void Dialog::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(Dialog::get_ID, GetID);
SCRIPT_METHOD_EXT(Dialog::get_OptionCount, GetOptionCount);
SCRIPT_METHOD_EXT(Dialog::get_ShowTextParser, GetShowTextParser);
SCRIPT_METHOD_EXT(Dialog::DisplayOptions^1, DisplayOptions);
SCRIPT_METHOD_EXT(Dialog::GetOptionState^1, GetOptionState);
SCRIPT_METHOD_EXT(Dialog::GetOptionText^1, GetOptionText);
SCRIPT_METHOD_EXT(Dialog::HasOptionBeenChosen^1, HasOptionBeenChosen);
SCRIPT_METHOD_EXT(Dialog::SetOptionState^2, SetOptionState);
SCRIPT_METHOD_EXT(Dialog::Start^0, Start);
}
void Dialog::GetID(ScriptMethodParams &params) {
PARAMS1(ScriptDialog *, sd);
params._result = AGS3::Dialog_GetID(sd);
}
void Dialog::GetOptionCount(ScriptMethodParams &params) {
PARAMS1(ScriptDialog *, sd);
params._result = AGS3::Dialog_GetOptionCount(sd);
}
void Dialog::GetShowTextParser(ScriptMethodParams &params) {
PARAMS1(ScriptDialog *, sd);
params._result = AGS3::Dialog_GetShowTextParser(sd);
}
void Dialog::DisplayOptions(ScriptMethodParams &params) {
PARAMS2(ScriptDialog *, sd, int, sayChosenOption);
params._result = AGS3::Dialog_DisplayOptions(sd, sayChosenOption);
}
void Dialog::GetOptionState(ScriptMethodParams &params) {
PARAMS2(ScriptDialog *, sd, int, option);
params._result = AGS3::Dialog_GetOptionState(sd, option);
}
void Dialog::GetOptionText(ScriptMethodParams &params) {
PARAMS2(ScriptDialog *, sd, int, option);
params._result = AGS3::Dialog_GetOptionText(sd, option);
}
void Dialog::HasOptionBeenChosen(ScriptMethodParams &params) {
PARAMS2(ScriptDialog *, sd, int, option);
params._result = AGS3::Dialog_HasOptionBeenChosen(sd, option);
}
void Dialog::SetOptionState(ScriptMethodParams &params) {
PARAMS3(ScriptDialog *, sd, int, option, int, newState);
AGS3::Dialog_SetOptionState(sd, option, newState);
}
void Dialog::Start(ScriptMethodParams &params) {
PARAMS1(ScriptDialog *, sd);
AGS3::Dialog_Start(sd);
}
} // namespace Core
} // namespace Plugins
} // namespace AGS3

View File

@ -0,0 +1,51 @@
/* ScummVM - Graphic Adventure Engine
*
* ScummVM is the legal property of its developers, whose names
* are too numerous to list here. Please refer to the COPYRIGHT
* file distributed with this source distribution.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
#ifndef AGS_PLUGINS_CORE_DIALOG_H
#define AGS_PLUGINS_CORE_DIALOG_H
#include "ags/plugins/plugin_base.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class Dialog : public ScriptContainer {
public:
static void AGS_EngineStartup(IAGSEngine *engine);
static void GetID(ScriptMethodParams &params);
static void GetOptionCount(ScriptMethodParams &params);
static void GetShowTextParser(ScriptMethodParams &params);
static void DisplayOptions(ScriptMethodParams &params);
static void GetOptionState(ScriptMethodParams &params);
static void GetOptionText(ScriptMethodParams &params);
static void HasOptionBeenChosen(ScriptMethodParams &params);
static void SetOptionState(ScriptMethodParams &params);
static void Start(ScriptMethodParams &params);
};
} // namespace Core
} // namespace Plugins
} // namespace AGS3
#endif

View File

@ -0,0 +1,143 @@
/* ScummVM - Graphic Adventure Engine
*
* ScummVM is the legal property of its developers, whose names
* are too numerous to list here. Please refer to the COPYRIGHT
* file distributed with this source distribution.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
#include "ags/plugins/core/dialog_options_rendering_info.h"
#include "ags/engine/ac/dialog_options_rendering.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
void DialogOptionsRenderingInfo::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::get_ActiveOptionID, GetActiveOptionID);
SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::set_ActiveOptionID, SetActiveOptionID);
SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::get_DialogToRender, GetDialogToRender);
SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::get_Height, GetHeight);
SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::set_Height, SetHeight);
SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::get_ParserTextBoxX, GetParserTextboxX);
SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::set_ParserTextBoxX, SetParserTextboxX);
SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::get_ParserTextBoxY, GetParserTextboxY);
SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::set_ParserTextBoxY, SetParserTextboxY);
SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::get_ParserTextBoxWidth, GetParserTextboxWidth);
SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::set_ParserTextBoxWidth, SetParserTextboxWidth);
SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::get_Surface, GetSurface);
SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::get_Width, GetWidth);
SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::set_Width, SetWidth);
SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::get_X, GetX);
SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::set_X, SetX);
SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::get_Y, GetY);
SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::set_Y, SetY);
}
void DialogOptionsRenderingInfo::GetActiveOptionID(ScriptMethodParams &params) {
PARAMS1(ScriptDialogOptionsRendering *, dlgOptRender);
params._result = AGS3::DialogOptionsRendering_GetActiveOptionID(dlgOptRender);
}
void DialogOptionsRenderingInfo::SetActiveOptionID(ScriptMethodParams &params) {
PARAMS2(ScriptDialogOptionsRendering *, dlgOptRender, int, activeOptionID);
AGS3::DialogOptionsRendering_SetActiveOptionID(dlgOptRender, activeOptionID);
}
void DialogOptionsRenderingInfo::GetDialogToRender(ScriptMethodParams &params) {
PARAMS1(ScriptDialogOptionsRendering *, dlgOptRender);
params._result = AGS3::DialogOptionsRendering_GetDialogToRender(dlgOptRender);
}
void DialogOptionsRenderingInfo::GetHeight(ScriptMethodParams &params) {
PARAMS1(ScriptDialogOptionsRendering *, dlgOptRender);
params._result = AGS3::DialogOptionsRendering_GetHeight(dlgOptRender);
}
void DialogOptionsRenderingInfo::SetHeight(ScriptMethodParams &params) {
PARAMS2(ScriptDialogOptionsRendering *, dlgOptRender, int, newHeight);
AGS3::DialogOptionsRendering_SetHeight(dlgOptRender, newHeight);
}
void DialogOptionsRenderingInfo::GetParserTextboxX(ScriptMethodParams &params) {
PARAMS1(ScriptDialogOptionsRendering *, dlgOptRender);
params._result = AGS3::DialogOptionsRendering_GetParserTextboxX(dlgOptRender);
}
void DialogOptionsRenderingInfo::SetParserTextboxX(ScriptMethodParams &params) {
PARAMS2(ScriptDialogOptionsRendering *, dlgOptRender, int, newX);
AGS3::DialogOptionsRendering_SetParserTextboxX(dlgOptRender, newX);
}
void DialogOptionsRenderingInfo::GetParserTextboxY(ScriptMethodParams &params) {
PARAMS1(ScriptDialogOptionsRendering *, dlgOptRender);
params._result = AGS3::DialogOptionsRendering_GetParserTextboxY(dlgOptRender);
}
void DialogOptionsRenderingInfo::SetParserTextboxY(ScriptMethodParams &params) {
PARAMS2(ScriptDialogOptionsRendering *, dlgOptRender, int, newY);
AGS3::DialogOptionsRendering_SetParserTextboxY(dlgOptRender, newY);
}
void DialogOptionsRenderingInfo::GetParserTextboxWidth(ScriptMethodParams &params) {
PARAMS1(ScriptDialogOptionsRendering *, dlgOptRender);
params._result = AGS3::DialogOptionsRendering_GetParserTextboxWidth(dlgOptRender);
}
void DialogOptionsRenderingInfo::SetParserTextboxWidth(ScriptMethodParams &params) {
PARAMS2(ScriptDialogOptionsRendering *, dlgOptRender, int, newWidth);
AGS3::DialogOptionsRendering_SetParserTextboxWidth(dlgOptRender, newWidth);
}
void DialogOptionsRenderingInfo::GetSurface(ScriptMethodParams &params) {
PARAMS1(ScriptDialogOptionsRendering *, dlgOptRender);
params._result = AGS3::DialogOptionsRendering_GetSurface(dlgOptRender);
}
void DialogOptionsRenderingInfo::GetWidth(ScriptMethodParams &params) {
PARAMS1(ScriptDialogOptionsRendering *, dlgOptRender);
params._result = AGS3::DialogOptionsRendering_GetWidth(dlgOptRender);
}
void DialogOptionsRenderingInfo::SetWidth(ScriptMethodParams &params) {
PARAMS2(ScriptDialogOptionsRendering *, dlgOptRender, int, newWidth);
AGS3::DialogOptionsRendering_SetWidth(dlgOptRender, newWidth);
}
void DialogOptionsRenderingInfo::GetX(ScriptMethodParams &params) {
PARAMS1(ScriptDialogOptionsRendering *, dlgOptRender);
params._result = AGS3::DialogOptionsRendering_GetX(dlgOptRender);
}
void DialogOptionsRenderingInfo::SetX(ScriptMethodParams &params) {
PARAMS2(ScriptDialogOptionsRendering *, dlgOptRender, int, newX);
AGS3::DialogOptionsRendering_SetX(dlgOptRender, newX);
}
void DialogOptionsRenderingInfo::GetY(ScriptMethodParams &params) {
PARAMS1(ScriptDialogOptionsRendering *, dlgOptRender);
params._result = AGS3::DialogOptionsRendering_GetY(dlgOptRender);
}
void DialogOptionsRenderingInfo::SetY(ScriptMethodParams &params) {
PARAMS2(ScriptDialogOptionsRendering *, dlgOptRender, int, newY);
AGS3::DialogOptionsRendering_SetY(dlgOptRender, newY);
}
} // namespace Core
} // namespace Plugins
} // namespace AGS3

View File

@ -0,0 +1,60 @@
/* ScummVM - Graphic Adventure Engine
*
* ScummVM is the legal property of its developers, whose names
* are too numerous to list here. Please refer to the COPYRIGHT
* file distributed with this source distribution.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
#ifndef AGS_PLUGINS_CORE_DIALOG_OPTIONS_RENDERING_INFO_H
#define AGS_PLUGINS_CORE_DIALOG_OPTIONS_RENDERING_INFO_H
#include "ags/plugins/plugin_base.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class DialogOptionsRenderingInfo : public ScriptContainer {
public:
static void AGS_EngineStartup(IAGSEngine *engine);
static void GetActiveOptionID(ScriptMethodParams &params);
static void SetActiveOptionID(ScriptMethodParams &params);
static void GetDialogToRender(ScriptMethodParams &params);
static void GetHeight(ScriptMethodParams &params);
static void SetHeight(ScriptMethodParams &params);
static void GetParserTextboxX(ScriptMethodParams &params);
static void SetParserTextboxX(ScriptMethodParams &params);
static void GetParserTextboxY(ScriptMethodParams &params);
static void SetParserTextboxY(ScriptMethodParams &params);
static void GetParserTextboxWidth(ScriptMethodParams &params);
static void SetParserTextboxWidth(ScriptMethodParams &params);
static void GetSurface(ScriptMethodParams &params);
static void GetWidth(ScriptMethodParams &params);
static void SetWidth(ScriptMethodParams &params);
static void GetX(ScriptMethodParams &params);
static void SetX(ScriptMethodParams &params);
static void GetY(ScriptMethodParams &params);
static void SetY(ScriptMethodParams &params);
};
} // namespace Core
} // namespace Plugins
} // namespace AGS3
#endif

View File

@ -29,136 +29,136 @@ namespace Plugins {
namespace Core {
void DrawingSurface::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(DrawingSurface::Clear^1, DrawingSurface_Clear);
SCRIPT_METHOD_EXT(DrawingSurface::CreateCopy^0, DrawingSurface_CreateCopy);
SCRIPT_METHOD_EXT(DrawingSurface::DrawCircle^3, DrawingSurface_DrawCircle);
SCRIPT_METHOD_EXT(DrawingSurface::DrawImage^6, DrawingSurface_DrawImage);
SCRIPT_METHOD_EXT(DrawingSurface::DrawLine^5, DrawingSurface_DrawLine);
SCRIPT_METHOD_EXT(DrawingSurface::DrawMessageWrapped^5, DrawingSurface_DrawMessageWrapped);
SCRIPT_METHOD_EXT(DrawingSurface::DrawPixel^2, DrawingSurface_DrawPixel);
SCRIPT_METHOD_EXT(DrawingSurface::DrawRectangle^4, DrawingSurface_DrawRectangle);
SCRIPT_METHOD_EXT(DrawingSurface::DrawString^104, ScPl_DrawingSurface_DrawString);
SCRIPT_METHOD_EXT(DrawingSurface::Clear^1, Clear);
SCRIPT_METHOD_EXT(DrawingSurface::CreateCopy^0, CreateCopy);
SCRIPT_METHOD_EXT(DrawingSurface::DrawCircle^3, DrawCircle);
SCRIPT_METHOD_EXT(DrawingSurface::DrawImage^6, DrawImage);
SCRIPT_METHOD_EXT(DrawingSurface::DrawLine^5, DrawLine);
SCRIPT_METHOD_EXT(DrawingSurface::DrawMessageWrapped^5, DrawMessageWrapped);
SCRIPT_METHOD_EXT(DrawingSurface::DrawPixel^2, DrawPixel);
SCRIPT_METHOD_EXT(DrawingSurface::DrawRectangle^4, DrawRectangle);
SCRIPT_METHOD_EXT(DrawingSurface::DrawString^104, ScPl_DrawString);
if (engine->version < kScriptAPI_v350)
SCRIPT_METHOD_EXT(DrawingSurface::DrawStringWrapped^6, DrawingSurface_DrawStringWrapped_Old);
SCRIPT_METHOD_EXT(DrawingSurface::DrawStringWrapped^6, DrawStringWrapped_Old);
else
SCRIPT_METHOD_EXT(DrawingSurface::DrawStringWrapped^6, DrawingSurface_DrawStringWrapped);
SCRIPT_METHOD_EXT(DrawingSurface::DrawStringWrapped^6, DrawStringWrapped);
SCRIPT_METHOD_EXT(DrawingSurface::DrawSurface^2, DrawingSurface_DrawSurface);
SCRIPT_METHOD_EXT(DrawingSurface::DrawTriangle^6, DrawingSurface_DrawTriangle);
SCRIPT_METHOD_EXT(DrawingSurface::GetPixel^2, DrawingSurface_GetPixel);
SCRIPT_METHOD_EXT(DrawingSurface::Release^0, DrawingSurface_Release);
SCRIPT_METHOD_EXT(DrawingSurface::get_DrawingColor, DrawingSurface_GetDrawingColor);
SCRIPT_METHOD_EXT(DrawingSurface::set_DrawingColor, DrawingSurface_SetDrawingColor);
SCRIPT_METHOD_EXT(DrawingSurface::get_Height, DrawingSurface_GetHeight);
SCRIPT_METHOD_EXT(DrawingSurface::get_UseHighResCoordinates, DrawingSurface_GetUseHighResCoordinates);
SCRIPT_METHOD_EXT(DrawingSurface::set_UseHighResCoordinates, DrawingSurface_SetUseHighResCoordinates);
SCRIPT_METHOD_EXT(DrawingSurface::get_Width, DrawingSurface_GetWidth);
SCRIPT_METHOD_EXT(DrawingSurface::DrawSurface^2, DrawSurface);
SCRIPT_METHOD_EXT(DrawingSurface::DrawTriangle^6, DrawTriangle);
SCRIPT_METHOD_EXT(DrawingSurface::GetPixel^2, GetPixel);
SCRIPT_METHOD_EXT(DrawingSurface::Release^0, Release);
SCRIPT_METHOD_EXT(DrawingSurface::get_DrawingColor, GetDrawingColor);
SCRIPT_METHOD_EXT(DrawingSurface::set_DrawingColor, SetDrawingColor);
SCRIPT_METHOD_EXT(DrawingSurface::get_Height, GetHeight);
SCRIPT_METHOD_EXT(DrawingSurface::get_UseHighResCoordinates, GetUseHighResCoordinates);
SCRIPT_METHOD_EXT(DrawingSurface::set_UseHighResCoordinates, SetUseHighResCoordinates);
SCRIPT_METHOD_EXT(DrawingSurface::get_Width, GetWidth);
}
void DrawingSurface::DrawingSurface_Clear(ScriptMethodParams &params) {
void DrawingSurface::Clear(ScriptMethodParams &params) {
PARAMS2(ScriptDrawingSurface *, sds, int, colour);
AGS3::DrawingSurface_Clear(sds, colour);
}
void DrawingSurface::DrawingSurface_CreateCopy(ScriptMethodParams &params) {
void DrawingSurface::CreateCopy(ScriptMethodParams &params) {
PARAMS1(ScriptDrawingSurface *, sds);
params._result = AGS3::DrawingSurface_CreateCopy(sds);
}
void DrawingSurface::DrawingSurface_DrawCircle(ScriptMethodParams &params) {
void DrawingSurface::DrawCircle(ScriptMethodParams &params) {
PARAMS4(ScriptDrawingSurface *, sds, int, x, int, y, int, radius);
AGS3::DrawingSurface_DrawCircle(sds, x, y, radius);
}
void DrawingSurface::DrawingSurface_DrawImage(ScriptMethodParams &params) {
void DrawingSurface::DrawImage(ScriptMethodParams &params) {
PARAMS7(ScriptDrawingSurface *, sds, int, xx, int, yy, int, slot, int, trans, int, width, int, height);
AGS3::DrawingSurface_DrawImage(sds, xx, yy, slot, trans, width, height);
}
void DrawingSurface::DrawingSurface_DrawLine(ScriptMethodParams &params) {
void DrawingSurface::DrawLine(ScriptMethodParams &params) {
PARAMS6(ScriptDrawingSurface *, sds, int, fromx, int, fromy, int, tox, int, toy, int, thickness);
AGS3::DrawingSurface_DrawLine(sds, fromx, fromy, tox, toy, thickness);
}
void DrawingSurface::DrawingSurface_DrawMessageWrapped(ScriptMethodParams &params) {
void DrawingSurface::DrawMessageWrapped(ScriptMethodParams &params) {
PARAMS6(ScriptDrawingSurface *, sds, int, xx, int, yy, int, wid, int, font, int, msgm);
AGS3::DrawingSurface_DrawMessageWrapped(sds, xx, yy, wid, font, msgm);
}
void DrawingSurface::DrawingSurface_DrawPixel(ScriptMethodParams &params) {
void DrawingSurface::DrawPixel(ScriptMethodParams &params) {
PARAMS3(ScriptDrawingSurface *, sds, int, x, int, y);
AGS3::DrawingSurface_DrawPixel(sds, x, y);
}
void DrawingSurface::DrawingSurface_DrawRectangle(ScriptMethodParams &params) {
void DrawingSurface::DrawRectangle(ScriptMethodParams &params) {
PARAMS5(ScriptDrawingSurface *, sds, int, x1, int, y1, int, x2, int, y2);
AGS3::DrawingSurface_DrawRectangle(sds, x1, y1, x2, y2);
}
void DrawingSurface::ScPl_DrawingSurface_DrawString(ScriptMethodParams &params) {
void DrawingSurface::ScPl_DrawString(ScriptMethodParams &params) {
PARAMS4(ScriptDrawingSurface *, sds, int, xx, int, yy, int, font);
Common::String buf = params.format(4);
AGS3::DrawingSurface_DrawString(sds, xx, yy, font, buf.c_str());
}
void DrawingSurface::DrawingSurface_DrawStringWrapped_Old(ScriptMethodParams &params) {
void DrawingSurface::DrawStringWrapped_Old(ScriptMethodParams &params) {
PARAMS7(ScriptDrawingSurface *, sds, int, xx, int, yy, int, wid, int, font, int, alignment, const char *, msg);
AGS3::DrawingSurface_DrawStringWrapped_Old(sds, xx, yy, wid, font, alignment, msg);
}
void DrawingSurface::DrawingSurface_DrawStringWrapped(ScriptMethodParams &params) {
void DrawingSurface::DrawStringWrapped(ScriptMethodParams &params) {
PARAMS7(ScriptDrawingSurface *, sds, int, xx, int, yy, int, wid, int, font, int, alignment, const char *, msg);
AGS3::DrawingSurface_DrawStringWrapped(sds, xx, yy, wid, font, alignment, msg);
}
void DrawingSurface::DrawingSurface_DrawSurface(ScriptMethodParams &params) {
void DrawingSurface::DrawSurface(ScriptMethodParams &params) {
PARAMS3(ScriptDrawingSurface *, target, ScriptDrawingSurface *, source, int, translev);
AGS3::DrawingSurface_DrawSurface(target, source, translev);
}
void DrawingSurface::DrawingSurface_DrawTriangle(ScriptMethodParams &params) {
void DrawingSurface::DrawTriangle(ScriptMethodParams &params) {
PARAMS7(ScriptDrawingSurface *, sds, int, x1, int, y1, int, x2, int, y2, int, x3, int, y3);
AGS3::DrawingSurface_DrawTriangle(sds, x1, y1, x2, y2, x3, y3);
}
void DrawingSurface::DrawingSurface_GetPixel(ScriptMethodParams &params) {
void DrawingSurface::GetPixel(ScriptMethodParams &params) {
PARAMS3(ScriptDrawingSurface *, sds, int, x, int, y);
params._result = AGS3::DrawingSurface_GetPixel(sds, x, y);
}
void DrawingSurface::DrawingSurface_Release(ScriptMethodParams &params) {
void DrawingSurface::Release(ScriptMethodParams &params) {
PARAMS1(ScriptDrawingSurface *, sds);
AGS3::DrawingSurface_Release(sds);
}
void DrawingSurface::DrawingSurface_GetDrawingColor(ScriptMethodParams &params) {
void DrawingSurface::GetDrawingColor(ScriptMethodParams &params) {
PARAMS1(ScriptDrawingSurface *, sds);
params._result = AGS3::DrawingSurface_GetDrawingColor(sds);
}
void DrawingSurface::DrawingSurface_SetDrawingColor(ScriptMethodParams &params) {
void DrawingSurface::SetDrawingColor(ScriptMethodParams &params) {
PARAMS2(ScriptDrawingSurface *, sds, int, newColour);
AGS3::DrawingSurface_SetDrawingColor(sds, newColour);
}
void DrawingSurface::DrawingSurface_GetHeight(ScriptMethodParams &params) {
void DrawingSurface::GetHeight(ScriptMethodParams &params) {
PARAMS1(ScriptDrawingSurface *, sds);
params._result = AGS3::DrawingSurface_GetHeight(sds);
}
void DrawingSurface::DrawingSurface_GetUseHighResCoordinates(ScriptMethodParams &params) {
void DrawingSurface::GetUseHighResCoordinates(ScriptMethodParams &params) {
PARAMS1(ScriptDrawingSurface *, sds);
params._result = AGS3::DrawingSurface_GetUseHighResCoordinates(sds);
}
void DrawingSurface::DrawingSurface_SetUseHighResCoordinates(ScriptMethodParams &params) {
void DrawingSurface::SetUseHighResCoordinates(ScriptMethodParams &params) {
PARAMS2(ScriptDrawingSurface *, sds, int, highRes);
AGS3::DrawingSurface_SetUseHighResCoordinates(sds, highRes);
}
void DrawingSurface::DrawingSurface_GetWidth(ScriptMethodParams &params) {
void DrawingSurface::GetWidth(ScriptMethodParams &params) {
PARAMS1(ScriptDrawingSurface *, sds);
params._result = AGS3::DrawingSurface_GetWidth(sds);
}

View File

@ -33,27 +33,27 @@ class DrawingSurface : public ScriptContainer {
public:
void AGS_EngineStartup(IAGSEngine *engine);
static void DrawingSurface_Clear(ScriptMethodParams &params);
static void DrawingSurface_CreateCopy(ScriptMethodParams &params);
static void DrawingSurface_DrawCircle(ScriptMethodParams &params);
static void DrawingSurface_DrawImage(ScriptMethodParams &params);
static void DrawingSurface_DrawLine(ScriptMethodParams &params);
static void DrawingSurface_DrawMessageWrapped(ScriptMethodParams &params);
static void DrawingSurface_DrawPixel(ScriptMethodParams &params);
static void DrawingSurface_DrawRectangle(ScriptMethodParams &params);
static void ScPl_DrawingSurface_DrawString(ScriptMethodParams &params);
static void DrawingSurface_DrawStringWrapped_Old(ScriptMethodParams &params);
static void DrawingSurface_DrawStringWrapped(ScriptMethodParams &params);
static void DrawingSurface_DrawSurface(ScriptMethodParams &params);
static void DrawingSurface_DrawTriangle(ScriptMethodParams &params);
static void DrawingSurface_GetPixel(ScriptMethodParams &params);
static void DrawingSurface_Release(ScriptMethodParams &params);
static void DrawingSurface_GetDrawingColor(ScriptMethodParams &params);
static void DrawingSurface_SetDrawingColor(ScriptMethodParams &params);
static void DrawingSurface_GetHeight(ScriptMethodParams &params);
static void DrawingSurface_GetUseHighResCoordinates(ScriptMethodParams &params);
static void DrawingSurface_SetUseHighResCoordinates(ScriptMethodParams &params);
static void DrawingSurface_GetWidth(ScriptMethodParams &params);
static void Clear(ScriptMethodParams &params);
static void CreateCopy(ScriptMethodParams &params);
static void DrawCircle(ScriptMethodParams &params);
static void DrawImage(ScriptMethodParams &params);
static void DrawLine(ScriptMethodParams &params);
static void DrawMessageWrapped(ScriptMethodParams &params);
static void DrawPixel(ScriptMethodParams &params);
static void DrawRectangle(ScriptMethodParams &params);
static void ScPl_DrawString(ScriptMethodParams &params);
static void DrawStringWrapped_Old(ScriptMethodParams &params);
static void DrawStringWrapped(ScriptMethodParams &params);
static void DrawSurface(ScriptMethodParams &params);
static void DrawTriangle(ScriptMethodParams &params);
static void GetPixel(ScriptMethodParams &params);
static void Release(ScriptMethodParams &params);
static void GetDrawingColor(ScriptMethodParams &params);
static void SetDrawingColor(ScriptMethodParams &params);
static void GetHeight(ScriptMethodParams &params);
static void GetUseHighResCoordinates(ScriptMethodParams &params);
static void SetUseHighResCoordinates(ScriptMethodParams &params);
static void GetWidth(ScriptMethodParams &params);
};
} // namespace Core

View File

@ -0,0 +1,167 @@
/* ScummVM - Graphic Adventure Engine
*
* ScummVM is the legal property of its developers, whose names
* are too numerous to list here. Please refer to the COPYRIGHT
* file distributed with this source distribution.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
#include "ags/plugins/core/dynamic_sprite.h"
#include "ags/engine/ac/dynamic_sprite.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
void DynamicSprite::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(DynamicSprite::ChangeCanvasSize^4, ChangeCanvasSize);
SCRIPT_METHOD_EXT(DynamicSprite::CopyTransparencyMask^1, CopyTransparencyMask);
SCRIPT_METHOD_EXT(DynamicSprite::Crop^4, Crop);
SCRIPT_METHOD_EXT(DynamicSprite::Delete, Delete);
SCRIPT_METHOD_EXT(DynamicSprite::Flip^1, Flip);
SCRIPT_METHOD_EXT(DynamicSprite::GetDrawingSurface^0, GetDrawingSurface);
SCRIPT_METHOD_EXT(DynamicSprite::Resize^2, Resize);
SCRIPT_METHOD_EXT(DynamicSprite::Rotate^3, Rotate);
SCRIPT_METHOD_EXT(DynamicSprite::SaveToFile^1, SaveToFile);
SCRIPT_METHOD_EXT(DynamicSprite::Tint^5, Tint);
SCRIPT_METHOD_EXT(DynamicSprite::get_ColorDepth, GetColorDepth);
SCRIPT_METHOD_EXT(DynamicSprite::get_Graphic, GetGraphic);
SCRIPT_METHOD_EXT(DynamicSprite::get_Height, GetHeight);
SCRIPT_METHOD_EXT(DynamicSprite::get_Width, GetWidth);
SCRIPT_METHOD_EXT(DynamicSprite::Create^3, Create);
SCRIPT_METHOD_EXT(DynamicSprite::CreateFromBackground, CreateFromBackground);
SCRIPT_METHOD_EXT(DynamicSprite::CreateFromDrawingSurface^5, CreateFromDrawingSurface);
SCRIPT_METHOD_EXT(DynamicSprite::CreateFromExistingSprite^1, CreateFromExistingSprite_Old);
SCRIPT_METHOD_EXT(DynamicSprite::CreateFromExistingSprite^2, CreateFromExistingSprite);
SCRIPT_METHOD_EXT(DynamicSprite::CreateFromFile, CreateFromFile);
SCRIPT_METHOD_EXT(DynamicSprite::CreateFromSaveGame, CreateFromSaveGame);
SCRIPT_METHOD_EXT(DynamicSprite::CreateFromScreenShot, CreateFromScreenShot);
}
void DynamicSprite::ChangeCanvasSize(ScriptMethodParams &params) {
PARAMS5(ScriptDynamicSprite *, sds, int, width, int, height, int, x, int, y);
AGS3::DynamicSprite_ChangeCanvasSize(sds, width, height, x, y);
}
void DynamicSprite::CopyTransparencyMask(ScriptMethodParams &params) {
PARAMS2(ScriptDynamicSprite *, sds, int, sourceSprite);
AGS3::DynamicSprite_CopyTransparencyMask(sds, sourceSprite);
}
void DynamicSprite::Crop(ScriptMethodParams &params) {
PARAMS5(ScriptDynamicSprite *, sds, int, x1, int, y1, int, width, int, height);
AGS3::DynamicSprite_Crop(sds, x1, y1, width, height);
}
void DynamicSprite::Delete(ScriptMethodParams &params) {
PARAMS1(ScriptDynamicSprite *, sds);
AGS3::DynamicSprite_Delete(sds);
}
void DynamicSprite::Flip(ScriptMethodParams &params) {
PARAMS2(ScriptDynamicSprite *, sds, int, direction);
AGS3::DynamicSprite_Flip(sds, direction);
}
void DynamicSprite::GetDrawingSurface(ScriptMethodParams &params) {
PARAMS1(ScriptDynamicSprite *, dss);
params._result = AGS3::DynamicSprite_GetDrawingSurface(dss);
}
void DynamicSprite::Resize(ScriptMethodParams &params) {
PARAMS3(ScriptDynamicSprite *, sds, int, width, int, height);
AGS3::DynamicSprite_Resize(sds, width, height);
}
void DynamicSprite::Rotate(ScriptMethodParams &params) {
PARAMS4(ScriptDynamicSprite *, sds, int, angle, int, width, int, height);
AGS3::DynamicSprite_Rotate(sds, angle, width, height);
}
void DynamicSprite::SaveToFile(ScriptMethodParams &params) {
PARAMS2(ScriptDynamicSprite *, sds, const char *, namm);
params._result = AGS3::DynamicSprite_SaveToFile(sds, namm);
}
void DynamicSprite::Tint(ScriptMethodParams &params) {
PARAMS6(ScriptDynamicSprite *, sds, int, red, int, green, int, blue, int, saturation, int, luminance);
AGS3::DynamicSprite_Tint(sds, red, green, blue, saturation, luminance);
}
void DynamicSprite::GetColorDepth(ScriptMethodParams &params) {
PARAMS1(ScriptDynamicSprite *, sds);
params._result = AGS3::DynamicSprite_GetColorDepth(sds);
}
void DynamicSprite::GetGraphic(ScriptMethodParams &params) {
PARAMS1(ScriptDynamicSprite *, sds);
params._result = AGS3::DynamicSprite_GetGraphic(sds);
}
void DynamicSprite::GetHeight(ScriptMethodParams &params) {
PARAMS1(ScriptDynamicSprite *, sds);
params._result = AGS3::DynamicSprite_GetHeight(sds);
}
void DynamicSprite::GetWidth(ScriptMethodParams &params) {
PARAMS1(ScriptDynamicSprite *, sds);
params._result = AGS3::DynamicSprite_GetWidth(sds);
}
void DynamicSprite::Create(ScriptMethodParams &params) {
PARAMS3(int, width, int, height, int, alphaChannel);
params._result = AGS3::DynamicSprite_Create(width, height, alphaChannel);
}
void DynamicSprite::CreateFromBackground(ScriptMethodParams &params) {
PARAMS5(int, frame, int, x1, int, y1, int, width, int, height);
params._result = AGS3::DynamicSprite_CreateFromBackground(frame, x1, y1, width, height);
}
void DynamicSprite::CreateFromDrawingSurface(ScriptMethodParams &params) {
PARAMS5(ScriptDrawingSurface *, sds, int, x, int, y, int, width, int, height);
params._result = AGS3::DynamicSprite_CreateFromDrawingSurface(sds, x, y, width, height);
}
void DynamicSprite::CreateFromExistingSprite_Old(ScriptMethodParams &params) {
PARAMS1(int, slot);
params._result = AGS3::DynamicSprite_CreateFromExistingSprite_Old(slot);
}
void DynamicSprite::CreateFromExistingSprite(ScriptMethodParams &params) {
PARAMS2(int, slot, int, preserveAlphaChannel);
params._result = AGS3::DynamicSprite_CreateFromExistingSprite(slot, preserveAlphaChannel);
}
void DynamicSprite::CreateFromFile(ScriptMethodParams &params) {
PARAMS1(const char *, filename);
params._result = AGS3::DynamicSprite_CreateFromFile(filename);
}
void DynamicSprite::CreateFromSaveGame(ScriptMethodParams &params) {
PARAMS3(int, sgslot, int, width, int, height);
params._result = AGS3::DynamicSprite_CreateFromSaveGame(sgslot, width, height);
}
void DynamicSprite::CreateFromScreenShot(ScriptMethodParams &params) {
PARAMS2(int, width, int, height);
params._result = AGS3::DynamicSprite_CreateFromScreenShot(width, height);
}
} // namespace Core
} // namespace Plugins
} // namespace AGS3

View File

@ -0,0 +1,64 @@
/* ScummVM - Graphic Adventure Engine
*
* ScummVM is the legal property of its developers, whose names
* are too numerous to list here. Please refer to the COPYRIGHT
* file distributed with this source distribution.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
#ifndef AGS_PLUGINS_CORE_DYNAMIC_SPRITE_H
#define AGS_PLUGINS_CORE_DYNAMIC_SPRITE_H
#include "ags/plugins/plugin_base.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class DynamicSprite : public ScriptContainer {
public:
static void AGS_EngineStartup(IAGSEngine *engine);
static void ChangeCanvasSize(ScriptMethodParams &params);
static void CopyTransparencyMask(ScriptMethodParams &params);
static void Crop(ScriptMethodParams &params);
static void Delete(ScriptMethodParams &params);
static void Flip(ScriptMethodParams &params);
static void GetDrawingSurface(ScriptMethodParams &params);
static void Resize(ScriptMethodParams &params);
static void Rotate(ScriptMethodParams &params);
static void SaveToFile(ScriptMethodParams &params);
static void Tint(ScriptMethodParams &params);
static void GetColorDepth(ScriptMethodParams &params);
static void GetGraphic(ScriptMethodParams &params);
static void GetHeight(ScriptMethodParams &params);
static void GetWidth(ScriptMethodParams &params);
static void Create(ScriptMethodParams &params);
static void CreateFromBackground(ScriptMethodParams &params);
static void CreateFromDrawingSurface(ScriptMethodParams &params);
static void CreateFromExistingSprite_Old(ScriptMethodParams &params);
static void CreateFromExistingSprite(ScriptMethodParams &params);
static void CreateFromFile(ScriptMethodParams &params);
static void CreateFromSaveGame(ScriptMethodParams &params);
static void CreateFromScreenShot(ScriptMethodParams &params);
};
} // namespace Core
} // namespace Plugins
} // namespace AGS3
#endif