diff options
author | whiteshark0 <whiteshark0@b956fd51-792f-4845-bead-9b4dfca2ff2c> | 2007-05-18 10:57:17 +0000 |
---|---|---|
committer | whiteshark0 <whiteshark0@b956fd51-792f-4845-bead-9b4dfca2ff2c> | 2007-05-18 10:57:17 +0000 |
commit | 7bf5487faf2b099ced0b2126c2cca164be80acf1 (patch) | |
tree | bb963e1e86b231097ef0e639f96f975a4372f303 /Modis/SDK | |
parent | 4f7f9544e5dbf992599865243aee4c6e2a5b5f8e (diff) | |
download | usdx-7bf5487faf2b099ced0b2126c2cca164be80acf1.tar.gz usdx-7bf5487faf2b099ced0b2126c2cca164be80acf1.tar.xz usdx-7bf5487faf2b099ced0b2126c2cca164be80acf1.zip |
Some changes mode on ModiSDK and Depending Files(Plugin Loader, Party SingScreen and Plugins)
Changes make the Pluginsystem more extendable with backwards compatibility in further Versions.
git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@220 b956fd51-792f-4845-bead-9b4dfca2ff2c
Diffstat (limited to 'Modis/SDK')
-rw-r--r-- | Modis/SDK/ModiSDK.pas | 80 |
1 files changed, 43 insertions, 37 deletions
diff --git a/Modis/SDK/ModiSDK.pas b/Modis/SDK/ModiSDK.pas index dc3b74c0..d8bad0d2 100644 --- a/Modis/SDK/ModiSDK.pas +++ b/Modis/SDK/ModiSDK.pas @@ -9,37 +9,41 @@ type //PluginInfo, for Init Creator: Array [0..32] of Char; //Name of the Author
PluginDesc: Array [0..64] of Char; //Plugin Description
- //Options
- LoadSong: boolean; //Whether or not a Song should be Loaded
- //Only When Song is Loaded:
- ShowNotes: boolean; //Whether the Note Lines should be displayed
- LoadVideo: boolean; //Should the Video be loaded ?
- LoadBack: boolean; //Should the Background be loaded ?
-
- ShowRateBar: boolean; //Whether the Bar that shows how good the player was sould be displayed
- ShowRateBar_O: boolean; //Load from Ini whether the Bar should be Displayed
-
- EnLineBonus: boolean; //Whether LineBonus Should be enabled
- EnLineBonus_O: boolean; //Load from Ini whether LineBonus Should be enabled
-
- BGShowFull: boolean; //Whether the Background or the Video should be shown Fullsize
- BGShowFull_O: boolean; //Whether the Background or the Video should be shown Fullsize
-
- //Options -> everytime
- ShowScore: boolean; //Whether or not the Score should be shown
- ShowBars: boolean; //Whether the White Bars on Top and Bottom should be Drawn
- TeamModeOnly: boolean; //If True the Plugin can only be Played in Team Mode
- GetSoundData: boolean; //If True the RData Procedure is called when new SoundData is available
- Dummy: boolean; //Should be Set to False... for Updateing Plugin Interface
-
- NumPlayers: Byte; //Number of Available Players for Modi
- //Set different Bits
- //1 -> One Player
- //2 -> Two Players
- //4 -> Three Players
- //8 -> Four Players
- //16-> Six Players
- //e.g. : 10 -> Playable with 2 and 4 Players
+ //Plugin Typ, atm: 8 only for PartyMode Modi
+ Case Typ: byte of
+ 8: (
+ //Options
+ LoadSong: boolean; //Whether or not a Song should be Loaded
+ //Only When Song is Loaded:
+ ShowNotes: boolean; //Whether the Note Lines should be displayed
+ LoadVideo: boolean; //Should the Video be loaded ?
+ LoadBack: boolean; //Should the Background be loaded ?
+
+ ShowRateBar: boolean; //Whether the Bar that shows how good the player was sould be displayed
+ ShowRateBar_O: boolean; //Load from Ini whether the Bar should be Displayed
+
+ EnLineBonus: boolean; //Whether LineBonus Should be enabled
+ EnLineBonus_O: boolean; //Load from Ini whether LineBonus Should be enabled
+
+ BGShowFull: boolean; //Whether the Background or the Video should be shown Fullsize
+ BGShowFull_O: boolean; //Whether the Background or the Video should be shown Fullsize
+
+ //Options -> everytime
+ ShowScore: boolean; //Whether or not the Score should be shown
+ ShowBars: boolean; //Whether the White Bars on Top and Bottom should be Drawn
+ TeamModeOnly: boolean; //If True the Plugin can only be Played in Team Mode
+ GetSoundData: boolean; //If True the RData Procedure is called when new SoundData is available
+ Dummy: boolean; //Should be Set to False... for Updateing Plugin Interface
+
+ NumPlayers: Byte //Number of Available Players for Modi
+ //Set different Bits
+ //1 -> One Player
+ //2 -> Two Players
+ //4 -> Three Players
+ //8 -> Four Players
+ //16-> Six Players
+ //e.g. : 10 -> Playable with 2 and 4 Players
+ );
end;
@@ -76,8 +80,6 @@ type //PluginInfo, for Init TexNum: integer;
W: real;
H: real;
- ScaleW: real; // for dynamic scalling while leaving width constant
- ScaleH: real; // for dynamic scalling while leaving height constant
end;
TSentences = record
@@ -110,8 +112,6 @@ type //PluginInfo, for Init end;
end;
- //AChar = array [0..254] of Char;
-
DWORD = Longword;
HSTREAM = DWORD;
@@ -120,13 +120,19 @@ type //PluginInfo, for Init //fModi_Translate = function (const Name, Translation: AChar): Integer; stdcall; //Pointer to Translator
fModi_Print = procedure (const Style, Size: Byte; const X, Y: Real; const Text: PChar); stdcall; //Procedure to Print Text //Now translated automatically
fModi_LoadSound = function (const Name: PChar): Cardinal; stdcall; //Procedure that loads a Custom Sound
- fModi_PlaySound = procedure (const Index: Cardinal); stdcall; //Plays a Custom Sound
+ pModi_PlaySound = procedure (const Index: Cardinal); stdcall; //Plays a Custom Sound
+ TMethodRec = record
+ LoadTex: fModi_LoadTex;
+ Print: fModi_Print;
+ LoadSound: fModi_LoadSound;
+ PlaySound: pModi_PlaySound;
+ end;
//DLL Funktionen
//Gave the Plugins Info
pModi_PluginInfo = procedure (var Info: TPluginInfo); stdcall;
//Executed on Game Start //If True Game begins, else Failure
- fModi_Init = function (const TeamInfo: TTeamInfo; var Playerinfo: TPlayerinfo; const Sentences: TSentences; const LoadTex: fModi_LoadTex; const Print: fModi_Print; LoadSound: fModi_LoadSound; PlaySound: fModi_PlaySound): boolean; stdcall;
+ fModi_Init = function (const TeamInfo: TTeamInfo; var Playerinfo: TPlayerinfo; const Sentences: TSentences; const Methods: TMethodRec): boolean; stdcall;
//Executed everytime the Screen is Drawed //If False The Game finishes
fModi_Draw = function (var Playerinfo: TPlayerinfo; const CurSentence: Cardinal): boolean; stdcall;
//Is Executed on Finish, Returns the Playernum of the Winner
|