技术Tech分类
VC++中DLL的创建和使用
Dynamic-Link-Library
1、 函数
a) DLL中:
extern “C” __declspec(dllexport) BOOL isPrime(int num)
{
BOOL flag = false;
for(int i = 2 ; i < num ; i ++)
{
if(num % i == 0)
break;
}
if (i == num)
flag = true;
else
flag = false;
return flag;
}
b) 应用程序
typedef BOOL ISPRIME(int);
ISPRIME *isPrime;
hm = ::LoadLibrary(“mydll2.dll”);
isPrime = (ISPRIME *)::GetProcAddress(hm,”isPrime”);
if(isPrime(8))
MessageBox(“是素数”);
else
MessageBox(“不是素数”);
hm = ::LoadLibrary(“mydll2.dll”);
2、 类
a) DLL
i. IloveYou.h头文件
class __declspec(dllexport) CILoveYou
{
public:
int GetValue();
void SetValue(int v);
CILoveYou();
virtual ~CILoveYou();
private:
int a;
};
ii. IloveYou.cpp程序文件
CILoveYou::CILoveYou()
{
a = 0;
}
CILoveYou::~CILoveYou()
{
}
__declspec(dllexport) void CILoveYou::SetValue(int v)
{
this->a = v;
}
__declspec(dllexport) int CILoveYou::GetValue()
{
return a;
}
b) 应用程序
先把#include “ILoveYou.h”文件导入进来,然后在StdAfc.h头文件加入:
class __declspec(dllimport) CILoveYou;
访问该类的代码:
CILoveYou ily;
ily.SetValue(900);
char s[100];
wsprintf(s,”调用了类中的成员哦,值是:%d”,ily.GetValue());
ShowMessage(this->GetSafeHwnd(),s);
MFC 规则DLL
1、 函数
a) DLL
此类DLL有一个继承了CwinApp的类,但是函数可以不放在该类中。
extern “C” __declspec(dllexport) BOOL isOdd(int num)
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());//此句一定要
if(num % 2 == 0)
return true;
else
return false;
}
b) 应用程序
void CTestdll2Dlg::OnButton5()
{
// TODO: Add your control notification handler code here
typedef BOOL ISODD(int);
ISODD *isOdd;
HINSTANCE hm;
if(hm = ::LoadLibrary(“mfcdll4.dll”))
{
isOdd = (ISODD *)::GetProcAddress(hm,”isOdd”);
if(isOdd)
{
if(isOdd(9))
MessageBox(“是偶数”);
else
MessageBox(“不是偶数”);
}
else
{
MessageBox(“有问题”);
}
::FreeLibrary(hm);
}
else
{
MessageBox(“DLL加载失败”);
}
}
2、 类
a) DLL中的代码
i. Clzh类的头文件:lzh.h
class AFX_EXT_CLASS Clzh //此处一定要用AFX_EXT_CLASS
{
public:
CString GetValue();
void SetValue(CString str);
Clzh();
private:
CString str;
};
ii. Clzh类的实现文件:lzh.cpp
Clzh::Clzh()
{
}
__declspec(dllexport) void Clzh::SetValue(CString str)
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
this->str = str;
}
__declspec(dllexport) CString Clzh::GetValue()
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
return str;
}
b) 应用程序
在StdAfx.h中头文件中加入:class __declspec(dllimport) Clzh;
在要访问该类的地方加入头文件:#include “lzh.h”
程序如下:
void CTestdll2Dlg::OnButton7()
{
// TODO: Add your control notification handler code here
Clzh lzh;
lzh.SetValue(“abc”);
MessageBox(lzh.GetValue());
}
我翻译成英文版的SYSTEM40 SDK ADV ENGINE
[ALICESOFT] GAMESDK 4.0播放MPG等电影
PlayMovie的DLL使用方法!
void PlayMovie(string szFileName)
{
if (!PlayMovie.Init()) {
system.Error(“儉乕價乕嵞惗偺弶婜壔偵幐攕偟傑偟偨”);
return;
}
if (!PlayMovie.Load(szFileName)) {
system.Error(“儉乕價乕僼傽僀儖亂 %s 亃\n偺撉傒崬傒偵幐攕偟傑偟偨” % szFileName);
return;
}
if (!PlayMovie.Play()) {
system.Error(“儉乕價乕嵞惗偵幐攕偟傑偟偨”);
return;
}
int nStartTime = system.GetTime();
for (;;) {
if (!PlayMovie.IsPlay()) break;
// 儉乕價乕偑侾昩埲忋嵞惗偝傟偰偄偨傜
// 僉乕僠僃僢僋偡傞
if (system.GetTime() – nStartTime >= 1000) {
if (KEY_IS_DOWN(VK_LBUTTON)) break;
if (KEY_IS_DOWN(VK_RBUTTON)) break;
if (KEY_IS_DOWN(VK_RETURN)) break;
if (KEY_IS_DOWN(VK_SPACE)) break;
if (KEY_IS_DOWN(VK_ESCAPE)) break;
if (KEY_IS_DOWN(VK_CONTROL)) break;
}
system.Sleep(1);
}
PlayMovie.Release();
KEY_CLEAR();
}
PlayMovie.hll,PlayMovie.inc配置好.
最后将PlayMovie.dll放到DLL文件夹就可以放MPG等电影了(目前用它看可爱的麻衣中……:)
SYSTEM4.0 开发教程2
何かを表示させないことには面白くないので、 game_main.jafのソースファイルをテキストエディタで開き、すべてのテキストを削除し、以下のコードを書いてみて下さい。
void game_main(void)
{
int nSp;
nSp = SP_GET_UNUSE_NUM();
SP_CREATE(nSp, 64, 64, 255, 0, 0, 255);
for (;;) {
UPDATE();
}
}
書き終わりましたら、ビルドしてみましょう。正しくコードが書かれていたら、最後に「OK」が出るはずです。もしエラーが出るようであれば、コードを見直してみましょう。
では、実行してみましょう。

左上に64×64サイズの赤い塗りつぶされた四角が表示されたと思います。
void game_main(void)
{
int nSp;
nSp = SP_GET_UNUSE_NUM();
SP_CREATE(nSp, 64, 64, 255, 0, 0, 255);
for (;;) {
UPDATE();
}
}
書き終わりましたら、ビルドしてみましょう。正しくコードが書かれていたら、最後に「OK」が出るはずです。もしエラーが出るようであれば、コードを見直してみましょう。
では、実行してみましょう。

左上に64×64サイズの赤い塗りつぶされた四角が表示されたと思います。
| では、ソースコードの解説に入ります。いきなり理解するのは難しいので、これはこういうものなんだと覚えるぐらいで良いと思います。
3行目の「int nSp;」は、nSpという名前のint変数を宣言しています。変数とは、値(データ)を入れておく箱のようなものだとイメージしてください。int変数は整数を入れておくことが出来ます。 4行目の「nSp = SP_GET_UNUSE_NUM();」ですが、まず「SP_GET_UNUSE_NUM()」の部分はSACT関数であるSP_GET_UNUSE_NUM関数を呼び出しています。この関数は、使用されていないスプライト番号を返す関数です。そして、そのスプライト番号をnSpに代入しています。代入とは、変数に値を入れることです。 ここでちょっとSACTの概要を説明したいと思います。SACTとはスプライトエンジンを基本とするライブラリセットで、プログラマにはライブラリ関数が提供されています。先ほどのSP_GET_UNUSE_NUM関数がライブラリ関数の1つです。 SACTはスプライトをスプライト番号で管理しています。スプライトに対する操作はすべてこのスプライト番号を使います。プログラマ側でスプライト番号を管理することも可能ですが、それは面倒なことなので、SP_GET_UNUSE_NUM関数を使って未使用のスプライト番号を取得して、それを使う方が管理は楽になると思います。 次に、5行目の「SP_CREATE(nSp, 64, 64, 255, 0, 0, 255);」ですが、これは、nSpに入っているスプライト番号に64×64サイズで赤色をした塗りつぶし矩形を作成して設定しています。 SP_CREATE関数等でスプライトを作成したり操作しただけでは、画面には一切更新されません。更新するには、UPDATE(SACT_UPDATE)関数を呼び出してください。7~9行目は、無限にUPDATE関数を呼び続けるコードです。 |
SYSTEM4.0 开发教程1
まず、開発キットの中に入っている「開発環境」フォルダを、どこか適当な場所へコピーしましょう。とりあえずここでは、”C:\開発”の下へコピーしたことにします。
次に、「開発環境」のフォルダ名を適当な名前に変更しておきましょう。とりあえず、「サンプル」としておきます。
次に、「開発環境」のフォルダ名を適当な名前に変更しておきましょう。とりあえず、「サンプル」としておきます。
| 各種ツールの中の「Sys42IDE」の中に「Sys42IDE.exe」という実行ファイルがあります。これは統合環境と呼ばれるもので、ソースコードをコンパイルしたり、コンパイルして作成した実行バイナリを起動するのに使います。
まずはSys42IDE.exeを実行してみましょう。 こんなウィンドウが開かれると思います。 |
| では、先ほどコピーした「サンプル」の中にプロジェクトファイルがあるので、それを開いてみましょう。
ウィンドウメニューの「ファイル(F)」→「プロジェクトを開く(O)…」を選択してください。するとダイアログが開かれますので、先ほどのフォルダの中にある「サンプル.pje」ファイルを開きましょう。 プロジェクトファイルの読み込みに成功すれば、アウトプットウィンドウに、「プロジェクト【サンプル】を読み込みました」と表示されると思います。 |
| では早速、ビルドしてみましょう。ツールバー上にある「ビルドボタン」を押してみてください。
アウトプットウィンドウにずらずらと何か表示されましたでしょうか。最後に「OK」と表示されていれば、ビルド成功です。
|
| ビルドが完了しましたので、もう実行できる状態になっています。ツールバーにある「実行ボタン」を押してください。
この人が走っているみたいなボタンです。 真っ黒なウィンドウが表示されたかと思います。このサンプルプログラムには特に何も処理が書かれていないので、これで正解です。正しく実行されたようです。 |
| プログラムコードが書かれたソースファイルを読み書きするのはメモ帳でも出来ますが、テキストエディタと呼ばれるソフトウェアを使用したほうが、より便利です。持っていない方は、Vectorや 窓の杜 などのサイトから適当なものを探してお使い下さい。 |
| 何も実行されてはいませんが、それでもソースコードは存在します。まずはそのソースコードの解説をしたいと思います。
「Source」フォルダの中にいくつかのソースファイルと「System」フォルダがあります。このなかで重要なのは、「game_main.jaf」です。それ以外のファイルは、気にしないでおきましょう。 game_main.jafの中は、
void game_main(void)
{
for (;;) { UPDATE(); }
}
こんな感じになっています。まず1行目の「void game_main(void)」ですが、これは関数を定義しています。これはプロジェクト中に必ず1つだけ必要な関数です。 2行目の「{」と5行目の「}」は、game_main関数の定義がどこからどこまでかを意味するものです。 最後に3行目の「for (;;) { UPDATE(); }」は、UPDATE関数を無限に呼び出す無限ループを意味しています。 |
| とまあ、こんな感じのソースです。何かの処理をさせたい場合は、このgame_main関数の中にコードを書いていけばOKです。 |
[ALICESOFT]SYSTEM4.0 SDK开发站点强力推荐!!!
[ALICESOFT]SYSTEM4.0 游戏范例代码
///////////////////////////////////////////////////////////////////////////////
// 僔僫儕僆.jaf
// Coder. 偁傞傝偁偹偭偲<info@alria.net>
// http://alria.net/
#僔僫儕僆001(void)
{
攚宨愝掕(仭僼傽儞僞僕乕丒幒撪侾);
嵍僉儍儔愝掕(仠傾儕僗);
塃僉儍儔愝掕(仠側偟);
僋儘僗僼僃乕僪();
'乽億億儕僞儞偱乿傾僪儀儞僠儍乕僎乕儉傪偮偔傠偆' R;
'2004/03/11 Ver 1.00' A;
'偼偠傑傝偼偠傑傝乣' A;
int nSelect = 慖戰巿俀戰("嵟弶偐傜尒傞", "僆乕僾僯儞僌傪旘偽偡");
儊僢僙乕僕徚嫀();
if (nSelect == 1) {
jump 僔僫儕僆002;
}
if (nSelect == 2) {
jump 僔僫儕僆011;
}
}
#僔僫儕僆002(void)
{
攚宨愝掕(仭僼傽儞僞僕乕丒奨侾);
嵍僉儍儔愝掕(仠儔儞僗);
塃僉儍儔愝掕(仠僔傿儖);
億儕僑儞夞揮倄幉();
儊僢僙乕僕僂傿儞僪僂塃();
NAME(仯僔傿儖);
'丒丒丒偁偺丒丒丒' A;
儊僢僙乕僕僂傿儞僪僂嵍();
NAME(仯儔儞僗);
'丒丒丒丒丒丒' A;
儊僢僙乕僕僂傿儞僪僂塃();
NAME(仯僔傿儖);
'丒丒丒丒丒丒儔儞僗條丠' A;
儊僢僙乕僕僂傿儞僪僂嵍();
NAME(仯儔儞僗);
'壌條偼儔儞僗偱偼側偄丅' A;
儊僢僙乕僕僂傿儞僪僂塃();
NAME(仯僔傿儖);
'偊偭丠' A;
儊僢僙乕僕僂傿儞僪僂嵍();
NAME(仯儔儞僗);
'壌條偼抐偠偰儔儞僗偱偼側偄両' A;
儊僢僙乕僕僂傿儞僪僂塃();
NAME(仯僔傿儖);
'丒丒丒丒丒丒' A;
'偠傖偁丄偳側偨側偺偱偡偐丠' A;
儊僢僙乕僕僂傿儞僪僂嵍();
NAME(仯儔儞僗);
'偦傟傪暦偔側丅' A;
儊僢僙乕僕僂傿儞僪僂僲乕儅儖();
'傐偐偭丅' A;
儊僢僙乕僕僂傿儞僪僂塃();
NAME(仯僔傿儖);
'傂傫傂傫丅' A;
儊僢僙乕僕僂傿儞僪僂嵍();
NAME(仯儔儞僗);
'偦傟偼偲傕偐偔丄偙偺夛榖憢偼' A;
NAME(仯儔儞僗);
'堦峴傐偭偪偟偐擖傜側偄偺偐両' A;
NAME(仯儔儞僗);
'旕忢偵偟傖傋傝偯傜偄偧両' A;
儊僢僙乕僕僂傿儞僪僂塃();
NAME(仯僔傿儖);
'儔儞僗條丄儔儞僗條丅' A;
儊僢僙乕僕僂傿儞僪僂嵍();
NAME(仯儔儞僗);
'壌條偼儔儞僗偠傖偹乕偺両' A;
儊僢僙乕僕僂傿儞僪僂僲乕儅儖();
'傐偐偭丅' A;
儊僢僙乕僕僂傿儞僪僂塃();
NAME(仯僔傿儖);
'傂傫傂傫丒丒丒偖偡偭丅' A;
NAME(仯僔傿儖);
'偦偆偄偆帪偼 C; R; 偲榖偣偽' R;
'偄偭傁偄榖偣傑偡傛丅' A;
儊僢僙乕僕僂傿儞僪僂嵍();
NAME(仯儔儞僗);
'側偵両両丂杮摉偐両' C; R;
'偆偍偭両丂杮摉偩両両' A;
NAME(仯儔儞僗);
'偙傫側傕偺丄儅僯儏傾儖偺偳' R;
'偙偵傕嵹偭偰側偐偭偨偧両' A;
NAME(仯儔儞僗);
'偔偭偦乕丒丒丒丅' R;
'嵓媆偩両丂傾僜僗儕僼僩傔両' A;
NAME(仯儔儞僗);
'僒億乕僩偵揹榖偟偰乮僺乕乯' R;
'偵乮僺乕乯傪乮僺乕乯偟偰' A;
儊僢僙乕僕僂傿儞僪僂塃();
NAME(仯僔傿儖);
'偦傫側帠傪偟偪傖懯栚偱偡丅' A;
NAME(仯僔傿儖);
'System 4.2 SDK偼柍彏偱巊偊' R;
'傞偺偱偡偑丒丒丒' A;
NAME(仯僔傿儖);
'僒億乕僩偼堦愗庴偗晅偗偰偄' R;
'側偄偺偱偡傛丅' A;
儊僢僙乕僕僂傿儞僪僂嵍();
NAME(仯儔儞僗);
'偔偦偭丅僒億乕僩嬈柋偑柺搢' R;
'偩偐傜偭偰摝偘傗偑偭偰丅' A;
塃僉儍儔愝掕(仠僴僯乕);
儊僢僙乕僕僂傿儞僪僂塃();
NAME(仯僴僯乕);
'僞僟偩偐傜偹丅' A;
儊僢僙乕僕僂傿儞僪僂嵍();
NAME(仯儔儞僗);
'弌偨側僴僯乕傔両' C; R;
'偔傜偊両儔仠僗傾僞乕僢僋両' A;
怳摦();
儊僢僙乕僕僂傿儞僪僂塃();
NAME(仯僴僯乕);
'偁偄傗乕丅' A;
儊僢僙乕僕僂傿儞僪僂僲乕儅儖();
'偖偟傖丅' A;
塃僉儍儔愝掕(仠僔傿儖);
儊僢僙乕僕僂傿儞僪僂塃();
NAME(仯僔傿儖);
'婡擻偑廩幚偟偨奐敪娐嫬偵丄' R;
'姶幱偟側偒傖偄偗傑偣傫偹丅' A;
儊僢僙乕僕僂傿儞僪僂嵍();
NAME(仯儔儞僗);
'偆傓丅僞僟偩偐傜側丅' A;
塃僉儍儔愝掕(仠側偟);
jump 僔僫儕僆003;
}
#僔僫儕僆003(void)
{
攚宨愝掕(仭僼傽儞僞僕乕丒僟儞僕儑儞侾);
嵍僉儍儔愝掕(仠儔儞僗);
塃僉儍儔愝掕(仠側偟);
億儕僑儞夞揮倃幉();
儊僢僙乕僕僂傿儞僪僂嵍();
NAME(仯儔儞僗);
'偦傟偵偟偰傕丄億億儕僞儞偼' R;
'愢柧偑偍偞側傝偩丅' A;
NAME(仯儔儞僗);
'壜垽偄偺偼棫偪奊偩偗丅' A;
NAME(仯儔儞僗);
'娞怱偺僗僋儕僾僩晹暘偼丄' A;
NAME(仯儔儞僗);
'億億儕僞儞偺旂傪偐傇偭偨' R;
'SACT偦偺傕偺偠傖偹乕偐両' A;
塃僉儍儔愝掕(仠巙捗崄);
儊僢僙乕僕僂傿儞僪僂塃();
NAME(仯巙捗崄);
'偦偺傕偺傛丅' A;
儊僢僙乕僕僂傿儞僪僂嵍();
NAME(仯儔儞僗);
'偆偍偭丄巙捗崄丅' A;
儊僢僙乕僕僂傿儞僪僂塃();
NAME(仯巙捗崄);
'億億儕僞儞偼丄強慒偼掕媊偺' R;
'廤崌懱偱偟偐側偄傢傛丅' A;
NAME(仯巙捗崄);
'偩偐傜偙偦丄SACT偲慻傒崌傢' R;
'偣傜傟傞奼挘惈偑偁傞偺丅' A;
儊僢僙乕僕僂傿儞僪僂嵍();
NAME(仯儔儞僗);
'擄偟偄榖偼偳偆偱傕偄偄丅' C; R;
'偡偖僎乕儉傪嶌偭偰偔傟丅' A;
儊僢僙乕僕僂傿儞僪僂塃();
NAME(仯巙捗崄);
'侾俀俁係俆俇俈俉俋侽侾俀俁' R;
'123456789012345678901234567' A;
儊僢僙乕僕僂傿儞僪僂嵍();
NAME(仯儔儞僗);
'偖傢偁偁偁偭両' C; R;
'側傫偩偦傟偼両' A;
儊僢僙乕僕僂傿儞僪僂塃();
NAME(仯巙捗崄);
'侾俁暥帤傛丅' A;
儊僢僙乕僕僂傿儞僪僂嵍();
NAME(仯儔儞僗);
'傊偭丠' A;
儊僢僙乕僕僂傿儞僪僂塃();
NAME(仯巙捗崄);
'暥帤悢傪悢偊偨偺丅' A;
NAME(仯巙捗崄);
'慡妏侾俁暥帤傪俀峴丅' C; R;
'偙傟傪挻偊偰榖偣側偄傢丅' A;
儊僢僙乕僕僂傿儞僪僂嵍();
NAME(仯儔儞僗);
'傒傒偭偪偄偧丒丒丒丅' A;
儊僢僙乕僕僂傿儞僪僂塃();
NAME(仯巙捗崄);
'偲傝偁偊偢変枬偟側偝偄丅' A;
儊僢僙乕僕僂傿儞僪僂嵍();
NAME(仯儔儞僗);
'偪偭丅' A;
儊僢僙乕僕僂傿儞僪僂塃();
NAME(仯巙捗崄);
'僲乕儅儖憢傕挷傋傞傢傛丅' A;
儊僢僙乕僕僂傿儞僪僂僲乕儅儖();
'123456789012345678901234567890123456789012345678' R;
'侾俀俁係俆俇俈俉俋侽侾俀俁係俆俇俈俉俋侽侾俀俁係' A;
儊僢僙乕僕僂傿儞僪僂塃();
NAME(仯巙捗崄);
'俀係暥帤偹丅' R;
'俁峴偄偗傞傒偨偄丅' A;
儊僢僙乕僕僂傿儞僪僂僲乕儅儖();
NAME(仯儔儞僗);
'偩偭偨傜壌條偼偙偭偪偺憢偱挐傞偧丅' A;
NAME(仯巙捗崄);
'堦墳丄偙偭偪偺憢傕夛榖梡偵巊偊傞傢偹丅' C; R;
'挿偄僥僉僗僩傪彂偔帪偼丄偝偭偒偺昞帵傪僐僺乕偟偰' R;
'掕婯偑傢傝偵偟偰巊偆偲偄偄傢傛丅' A;
NAME(仯巙捗崄);
'偦傟偠傖偁丄偦傠偦傠愢柧傪巒傔傑偟傚偆偐丅' A;
NAME(仯儔儞僗);
'偍偆丅' A;
jump 僔僫儕僆004;
}
#僔僫儕僆004(void)
{
攚宨愝掕(仭僼傽儞僞僕乕丒怷侾);
忋仺壓僋儘僗僼僃乕僪();
儊僢僙乕僕僂傿儞僪僂僲乕儅儖();
NAME(仯巙捗崄);
'傑偢丄億億儕僞儞偺儅僯儏傾儖傪撉傓偺偑慜採傛丅' C; R;
'係儁乕僕偟偐柍偄偐傜偡偖撉傒廔傢傞傢丅' A;
NAME(仯巙捗崄);
'傓偟傠忣曬偑彮側偔偰丄壗偐傜偡傟偽偄偄偐傢偐傜側' R;
'偔側傝偑偪側偺偑栤戣偹丅' C; 'SACT偲System4.2偺儅僯儏' R;
'傾儖偵撉傒恑傓偲丄搑抂偵晘嫃偑崅偔側傞偟丅' A;
NAME(仯儔儞僗);
'偦偆偩側丅傢偗偑傢偐傜傫丅' A;
NAME(仯巙捗崄);
'偦偙偱丄儅僯儏傾儖傪撉傫偩屻娙扨偵壗偐嶌傞傑偱丄' R;
'偳偆偡傟偽偄偄偐傪庤堷偒偡傞偺偑偙偺僔僫儕僆傛丅' C; R;
'僜乕僗僐乕僪傕岞奐偡傞偐傜丄捈愙嶲峫偵側傞傢丅' A;
NAME(仯儔儞僗);
'傢偐偭偨丅' C; R;
'偍慜偼傕偆偄偄偧丅偁偭偪峴偗丅' A;
NAME(仯巙捗崄);
'偊偭丠両丂壗傛偄偒側傝両' A;
NAME(仯儔儞僗);
'壌條偼懠偺彈傕尒偨偄丅' A;
NAME(仯巙捗崄);
'丒丒丒丒丒丒' A;
NAME(仯巙捗崄);
'乮偁傫偨丄傑傞偭偒傝儔儞僗偠傖側偄偺丒丒丒乯' A;
jump 僔僫儕僆011;
}
#僔僫儕僆011(void)
{
攚宨愝掕(仭僼傽儞僞僕乕丒偍揦侾);
嵍僉儍儔愝掕(仠側偟);
塃僉儍儔愝掕(仠儕僘僫);
屲鋳惎乮撪仺奜乯();
儊僢僙乕僕徚嫀();
儊僢僙乕僕僂傿儞僪僂僲乕儅儖();
NAME(仯儕僘僫);
'抦傝偨偄帠傪慖傫偱偔偩偝偄丅' B;
int nSelect = 慖戰巿俀戰("僄僨傿僞偵偮偄偰", "師傊");
if (nSelect == 1) {
jump 僔僫儕僆021;
}
if (nSelect == 2) {
jump 僔僫儕僆012;
}
}
#僔僫儕僆012(void)
{
攚宨愝掕(仭僼傽儞僞僕乕丒偍揦侾);
嵍僉儍儔愝掕(仠側偟);
塃僉儍儔愝掕(仠儕僘僫);
屲鋳惎乮撪仺奜乯();
儊僢僙乕僕徚嫀();
儊僢僙乕僕僂傿儞僪僂僲乕儅儖();
NAME(仯儕僘僫);
'抦傝偨偄帠傪慖傫偱偔偩偝偄丅' B;
int nSelect = 慖戰巿俀戰("娭悢偵偮偄偰", "師傊");
if (nSelect == 1) {
jump 僔僫儕僆031;
}
if (nSelect == 2) {
jump 僔僫儕僆013;
}
}
#僔僫儕僆013(void)
{
攚宨愝掕(仭僼傽儞僞僕乕丒偍揦侾);
嵍僉儍儔愝掕(仠側偟);
塃僉儍儔愝掕(仠儕僘僫);
屲鋳惎乮撪仺奜乯();
儊僢僙乕僕徚嫀();
儊僢僙乕僕僂傿儞僪僂僲乕儅儖();
NAME(仯儕僘僫);
'抦傝偨偄帠傪慖傫偱偔偩偝偄丅' B;
int nSelect = 慖戰巿俀戰("曄悢偵偮偄偰", "師傊");
if (nSelect == 1) {
jump 僔僫儕僆041;
}
if (nSelect == 2) {
jump 僔僫儕僆014;
}
}
#僔僫儕僆014(void)
{
攚宨愝掕(仭僼傽儞僞僕乕丒偍揦侾);
嵍僉儍儔愝掕(仠側偟);
塃僉儍儔愝掕(仠儕僘僫);
屲鋳惎乮撪仺奜乯();
儊僢僙乕僕徚嫀();
儊僢僙乕僕僂傿儞僪僂僲乕儅儖();
NAME(仯儕僘僫);
'抦傝偨偄帠傪慖傫偱偔偩偝偄丅' B;
int nSelect = 慖戰巿俀戰("偦偺懠偺偙偲", "師傊");
if (nSelect == 1) {
jump 僔僫儕僆051;
}
if (nSelect == 2) {
jump 僔僫儕僆015;
}
}
#僔僫儕僆015(void)
{
攚宨愝掕(仭僼傽儞僞僕乕丒偍揦侾);
嵍僉儍儔愝掕(仠側偟);
塃僉儍儔愝掕(仠儕僘僫);
屲鋳惎乮撪仺奜乯();
儊僢僙乕僕徚嫀();
儊僢僙乕僕僂傿儞僪僂僲乕儅儖();
NAME(仯儕僘僫);
'抦傝偨偄帠傪慖傫偱偔偩偝偄丅' B;
int nSelect = 慖戰巿俀戰("傕偆暦偐側偄", "嵟弶偺慖戰偵栠傞");
if (nSelect == 1) {
jump 僔僫儕僆061;
}
if (nSelect == 2) {
jump 僔僫儕僆011;
}
}
#僔僫儕僆021(void)
{
儊僢僙乕僕徚嫀();
攚宨愝掕(仭妛墍丒嫵幒);
嵍僉儍儔愝掕(仠側偟);
塃僉儍儔愝掕(仠儅儕傾);
夞揮傾僂僩();
儊僢僙乕僕僂傿儞僪僂僲乕儅儖();
R;
'丂丂丂丂丂丂丂丂僄僨傿僞偵偮偄偰' A;
NAME(仯儅儕傾);
'儅僯儏傾儖偵偼丄乽僜乕僗僼傽僀儖傪尒偨傝彂偒偐偊' R;
'偨傝偡傞偵偼僥僉僗僩僄僨傿僞偑昁梫偱偡乿偭偰彂偄' R;
'偰偁傞偗偳丄幚偼Windows偺儊儌挔偱傕奐偗傑偡丅' A;
NAME(仯儅儕傾);
'僜乕僗傪奐偔偵偼丄Sys42IDE偺夋柺偺嵍偐傜丄' R;
'乽僜乕僗乿傪慖傫偱乽僔僫儕僆.jaf乿傪慖傇偺丅' A;
NAME(仯儅儕傾);
'偩偗偳丄儊儌挔偩偲丄僞僽偲慡妏敿妏僗儁乕僗偺嬫暿' R;
'偑弌棃側偔偰丄偦傟偑僄儔乕偺尨場偵側傞偙偲偑偁傞' R;
'偐傜拲堄偟偰偹丅' A;
NAME(仯儅儕傾);
'僄儔乕傪尭傜偡偵偼丄僞僽偼巚偄愗偭偰慡晹徚偟偰丄' R;
'杮暥埲奜偺僗儁乕僗偼昁偢1暥帤偵偡傞偲偄偄傒偨偄丅' A;
NAME(仯儅儕傾);
'僥僉僗僩僄僨傿僞傪巊偄偨偄応崌偼丄Sys42IDE偺丄' R;
'乽僼傽僀儖乿乽娐嫬愝掕乿偱応強傪愝掕偟偰偹丅' A;
jump 僔僫儕僆012;
}
#僔僫儕僆031(void)
{
儊僢僙乕僕徚嫀();
攚宨愝掕(仭妛墍丒楲壓);
嵍僉儍儔愝掕(仠側偟);
塃僉儍儔愝掕(仠儕傾);
僽儘僢僋僨傿僝儖僽();
儊僢僙乕僕僂傿儞僪僂僲乕儅儖();
R;
'丂丂丂丂丂丂丂丂丂娭悢偵偮偄偰' A;
NAME(仯儕傾);
'億億儕僞儞偑巊偭偰偄傞娭悢偼丄' R;
'乽僔僫儕僆娭悢/ADVFunc.jaf乿偲丄' R;
'乽Scenario_func.jaf乿偵偁傞偺傛丅' A;
NAME(仯儕傾);
'偱傕偩偄偨偄偑SACT偺娭悢傪屇傫偱偄傞偩偗偩偐傜丄' R;
'寢嬊SACT偺僜乕僗傪尒側偄偲堄枴偑傢偐傜側偄偺丅' A;
NAME(仯儕傾);
'Sys42IDE偺grep専嶕婡擻偼SACT傪扵偝側偄偐傜丄' R;
'摨崼偺尵岅儅僯儏傾儖偐傜娭悢傪扵偡偐丄梡堄偟偨' R;
'僄僨傿僞偱撈帺偵grep偟側偄偲偄偗側偄傢丅' A;
NAME(仯儕傾);
'SACT偺娭悢偼偦偺傑傑億億儕僞儞偱屇傃弌偣傞偐傜丄' R;
'尒偮偗偨暔傪弴斣偵帋偟偰偄偔偲柺敀偄傢傛丅' A;
NAME(仯儕傾);
'SYS_GET_TIME娭悢偱尰嵼帪崗傪昞帵偡傞偲丄' C; R;
int nHour, nMinute, nSecond, nMilliSeconds;
SYS_GET_TIME(nHour, nMinute, nSecond, nMilliSeconds);
S(nHour.String());
'帪'
S(nMinute.String());
'暘'
S(nSecond.String());
'昩'
S(nMilliSeconds.String());
'儈儕昩' C; R;
'偙偆傗偭偰昞帵偝傟傞傒偨偄偹丅' A;
NAME(仯儕傾);
'娭悢偺寢壥傪昞帵偡傞偵偼丄S娭悢傪巊偆偺偹丅' C; R;
'宆曄姺偲暥帤楍楢寢偺曽朄偑傢偐傜側偄偗偳丄' R;
'偒偭偲丄傕偭偲娙扨側曽朄偑偁傞偵堘偄側偄傢丅' A;
jump 僔僫儕僆013;
}
#僔僫儕僆041(void)
{
儊僢僙乕僕徚嫀();
攚宨愝掕(仭妛墍丒拞掚);
嵍僉儍儔愝掕(仠側偟);
塃僉儍儔愝掕(仠儕僢僋);
億儕僑儞夞揮倄幉乮帪寁夞傝乯();
儊僢僙乕僕僂傿儞僪僂僲乕儅儖();
R;
'丂丂丂丂丂丂丂丂丂曄悢偵偮偄偰' A;
NAME(仯儕僢僋);
'丒丒丒丒丒丒' A;
NAME(仯儕僢僋);
'丒丒丒尵岅儅僯儏傾儖偵丄懠偲偮傝偁傢側偄偖傜偄丄' R;
'崸愗挌擩偵愢柧偟偰偁偭偨偧丒丒丒丅' A;
jump 僔僫儕僆014;
}
#僔僫儕僆051(void)
{
儊僢僙乕僕徚嫀();
攚宨愝掕(仭妛墍丒僌儔僂儞僪);
嵍僉儍儔愝掕(仠側偟);
塃僉儍儔愝掕(仠尒摉偐側傒);
儁乕僕傔偔傝();
儊僢僙乕僕僂傿儞僪僂僲乕儅儖();
R;
'丂丂丂丂丂丂丂丂丂偦偺懠偺偙偲' A;
NAME(仯尒摉偐側傒);
'丒丒丒SACT2偼墱偑怺偄傢丅' A;
NAME(仯尒摉偐側傒);
'傑偩傑偩丄幚嵺偵偳偆慻傔偽偄偄偺偐傢偐傜側偄強偑' R;
'懡偄丅' C; '偨偲偊偽崱傒偨偄側峴搑拞偱偺懸偪偲偐偹丅' A;
NAME(仯尒摉偐側傒);
'丒丒丒偣傔偰丄僎乕儉偲偟偰惉傝棫偭偰偄傞僒儞僾儖' R;
'偑偁傟偽丒丒丒丅' C; '慜偼嶌傝傗偡偐偭偨婥偑偡傞偟丅' A;
NAME(仯尒摉偐側傒);
'偲傝偁偊偢偼丄儅僯儏傾儖傪嬿乆傑偱撉傫偱攃埇偡傞' R;
'偟偐柍偄傢偹丅' C; '桬婥偑偁傟偽僜乕僗僐乕僪傪撉傓偗' R;
'偳丄儀乕僞偩偐傜彨棃曄傢傞偐傕偟傟側偄偟丅' A;
jump 僔僫儕僆015;
}
#僔僫儕僆061(void)
{
儊僢僙乕僕徚嫀();
攚宨愝掕(仭妛墍丒壆忋);
嵍僉儍儔愝掕(仠側偟);
塃僉儍儔愝掕(仠僴僯乕僉儞僌);
偖偟傖偖偟傖巻塃壓傂偭傁傝();
儊僢僙乕僕僂傿儞僪僂僲乕儅儖();
R;
'丂丂丂丂丂丂丂丂丂丂偁偲偑偒' A;
NAME(仯僴僯乕僉儞僌);
'丒丒丒丒丒丒' A;
嵍僉儍儔愝掕(仠儔儞僗);
NAME(仯儔儞僗);
'搑拞偐傜彈偺巕偺彂偒暘偗偑弌棃偰側偄偧丅' A;
NAME(仯僴僯乕僉儞僌);
'偁偄傗乕丅' A;
NAME(仯儔儞僗);
'傑偁偄偄丅側偵偣斉尃儌僲偺僉儍儔偱壗偐嶌偭偨偺偼' R;
'偙傟偑弶傔偰偩偐傜側丅' A;
塃僉儍儔愝掕(仠僔傿儖);
NAME(仯僔傿儖);
'儔儞僗條丄儔儞僗條丅' A;
NAME(仯儔儞僗);
'傫丠丂壗偩丄僔傿儖丅' A;
NAME(仯僔傿儖);
'偁偪傜偺曽偱丄儔儞僗條偺婾幰偑朶傟偰偄傞偲偄偆' R;
'塡傪帹偵偟偨偺偱偡偑丄偳偆偟傑偟傚偆偐丠' A;
NAME(仯儔儞僗);
'丒丒丒丒丒丒' A;
NAME(仯儔儞僗);
'傫傫傫乕丒丒丒丅' A;
NAME(仯儔儞僗);
'傛偟丅愴棯揑揚戅偩丄僔傿儖両' A;
NAME(仯僔傿儖);
'偁偭丄懸偭偰壓偝偄丄儔儞僗條乕両両' A;
僋儘僗僼僃乕僪();
R;
R;
'俿俫俤丂俤俶俢' A;
儊僢僙乕僕徚嫀();
jump 僔僫儕僆001;
}
[ALICESOFT]UNIX 下玩ALICESOFT的SYSTEM!!!
1 下载:->ダウンロード
2 教程:->とりあえず使ってみたい人のために
支持列表:
現在の安定バージョンは 1.6.3 です。
Version 1.6.3では以下のゲームが動作可能です。
- 鬼畜王ランス
- いけないかつみ先生
- ランス4 for WIN
- 闘神都市II for WIN
- かえるにょぱにょ~ん
- 戦巫女
- 人間狩り (in アリスの館456)
- 零式 (in アリスの館456)
- アトラク=ナクア (in アリスの館456)
- DALK (in アリスの館456)
- 闘神都市 (in アリスの館456)
- DrStop! (in アリスの館456)
- ランス1 (in アリスの館456)
- ランス2 (in アリスの館456)
- ランス3 (in アリスの館456)
- 王道勇者
- ディアボリカ
- AmbivalenZ for Win95
- ぱすてるチャイム
- ぷろすちゅーでんとGOOD
- 守り神様
- ママトト
- Hushaby Baby
- DARCROWS
- Persiom
- 隠れ月
- SeeIN青
- これDPS?(in 20世紀アリス)
- かえるにょ国にょアリス(in 20世紀アリス)
- OnlyYou リ・クルス
- 王子さま Lv1.5
- 大悪司(オープニング不可)
- 妻みぐい(オープニング不可)


