页面: 上一页 1 2 3 ...6 7 8 9 10 11 12 13 14 15 16 下一页

技术Tech分类

二月
1
2005

VC++中DLL的创建和使用

1
作者:AirForce

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());
}

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());

}

标签
一月
21
2005
★–我翻译成英文版的SYSTEM40 SDK ADV ENGINE
++ af     (同好)21灌 — 

我翻译成英文版的SYSTEM40 SDK ADV ENGINE

里面有些英语单词是硬填的:)

..2005/ 1/21(Fri) 20:59[1561]

++ af (同好)22灌
// Const Config.jaf
// Coder.Yudai Senoo

// Background
const int 仭妛墍丒嫵幒 = 20000,
仭妛墍丒楲壓 = 20001,
仭妛墍丒拞掚 = 20002,
仭妛墍丒壆忋 = 20003,
仭妛墍丒僌儔僂儞僪 = 20004,
仭妛墍丒怑堳幒 = 20005,
仭妛墍丒曐寬幒 = 20006,
仭妛墍丒恾彂娰 = 20007,
仭妛墍丒懱堢娰 = 20008,
仭妛墍丒僾乕儖 = 20009,
仭妛墍丒峑栧 = 20010,
仭廃曈巤愝丒摴 = 20011,
仭廃曈巤愝丒岞墍 = 20012,
仭廃曈巤愝丒彜揦奨 = 20013,
仭廃曈巤愝丒梀墍抧 = 20014,
仭廃曈巤愝丒奀娸 = 20015,
仭壠丒奜娤侾 = 20016,
仭壠丒奜娤俀 = 20017,
仭抝偺巕偺晹壆 = 20018,
仭彈偺巕偺晹壆 = 20019,

仭僼傽儞僞僕乕丒奨侾 = 20100,
仭僼傽儞僞僕乕丒偍揦侾 = 20101,
仭僼傽儞僞僕乕丒幒撪侾 = 20102,
仭僼傽儞僞僕乕丒怷侾 = 20103,
仭僼傽儞僞僕乕丒僟儞僕儑儞侾 = 20104,

仭僼傽儞僞僕乕丒奨俀 = 20105,
仭僼傽儞僞僕乕丒庰応 = 20106,
仭僼傽儞僞僕乕丒幒撪俀 = 20107,
仭僼傽儞僞僕乕丒慏 = 20108,
仭僼傽儞僞僕乕丒峘 = 20109,

仭僼傽儞僞僕乕丒奨俁 = 20110,
仭僼傽儞僞僕乕丒摤媄応 = 20111,
仭僼傽儞僞僕乕丒埫偄晹壆 = 20112,
仭僼傽儞僞僕乕丒僟儞僕儑儞俀 = 20113,
仭僼傽儞僞僕乕丒摴 = 20114,
仭僼傽儞僞僕乕丒忛丒奜娤 = 20115,
仭僼傽儞僞僕乕丒忛丒撪晹 = 20116,
仭僼傽儞僞僕乕丒寶暔 = 20117,
仭僼傽儞僞僕乕丒嵳抎 = 20118,
仭僼傽儞僞僕乕丒惵嬻 = 20119,

仭Building1 = 40000,
仭Welcome = 35001;

// Character
const int 仠側偟 = 0,
仠僔傿儖 = 10063,
仠僴僯乕 = 10076,
仠儅儕傾 = 10085,
仠儕傾 = 10096,
仠儕僢僋 = 10097,
仠巙捗崄 = 10111,
仠尒摉偐側傒 = 10146,
仠僴僯乕僉儞僌 = 10152,
仠儔儞僗 = 10237,
仠傾儕僗 = 10503,
仠儕僘僫 = 10566;

// Name
const string 仯AF = “AF”,
仯AliceFan = “AliceFan”,
仯儅儕傾 = “儅儕傾”,
仯儕傾 = “儕傾”,
仯儕僢僋 = “儕僢僋”,
仯巙捗崄 = “巙捗崄”,
仯尒摉偐側傒 = “尒摉偐側傒”,
仯僴僯乕僉儞僌 = “僴僯乕僉儞僌”,
仯儔儞僗 = “儔儞僗”,
仯傾儕僗 = “傾儕僗”,
仯儕僘僫 = “儕僘僫”;

//BGM
const int 侓儔儞僗侾丵侽侾 = 1,
侓儔儞僗侾丵侽俀 = 2,
侓儔儞僗侾丵侽俁 = 3,
侓儔儞僗侾丵侽係 = 4,
侓儔儞僗侾丵侽俆 = 5,
侓儔儞僗侾丵侽俇 = 6,
侓儔儞僗侾丵侽俈 = 7,
侓儔儞僗侾丵侽俉 = 8,
侓儔儞僗侾丵侽俋 = 9,
侓儔儞僗侾丵侾侽 = 10,
侓儔儞僗侾丵侾侾 = 11,
侓儔儞僗侾丵侾俀 = 12,
侓儔儞僗侾丵侾俁 = 13,
侓儔儞僗侾丵侾係 = 14,
侓儔儞僗侾丵侾俆 = 15,
侓儔儞僗侾丵侾俇 = 16,

侓儔儞僗俀丵侽侾 = 101,
侓儔儞僗俀丵侽俀 = 102,
侓儔儞僗俀丵侽俁 = 103,
侓儔儞僗俀丵侽係 = 104,
侓儔儞僗俀丵侽俆 = 105,
侓儔儞僗俀丵侽俇 = 106,
侓儔儞僗俀丵侽俈 = 107,
侓儔儞僗俀丵侽俉 = 108,
侓儔儞僗俀丵侽俋 = 109,
侓儔儞僗俀丵侾侽 = 110,
侓儔儞僗俀丵侾侾 = 111,
侓儔儞僗俀丵侾俀 = 112,
侓儔儞僗俀丵侾俁 = 113,
侓儔儞僗俀丵侾係 = 114,
侓儔儞僗俀丵侾俆 = 115,
侓儔儞僗俀丵侾俇 = 116,
侓儔儞僗俀丵侾俉 = 118,
侓儔儞僗俀丵侾俋 = 119,

侓儔儞僗俁丵侽侾 = 201,
侓儔儞僗俁丵侽俀 = 202,
侓儔儞僗俁丵侽俁 = 203,
侓儔儞僗俁丵侽係 = 204,
侓儔儞僗俁丵侽俆 = 205,
侓儔儞僗俁丵侽俇 = 206,
侓儔儞僗俁丵侽俈 = 207,
侓儔儞僗俁丵侽俉 = 208,
侓儔儞僗俁丵侽俋 = 209,
侓儔儞僗俁丵侾侽 = 210,
侓儔儞僗俁丵侾侾 = 211,
侓儔儞僗俁丵侾俀 = 212,
侓儔儞僗俁丵侾俁 = 213,
侓儔儞僗俁丵侾係 = 214,
侓儔儞僗俁丵侾俆 = 215,
侓儔儞僗俁丵侾俇 = 216,
侓儔儞僗俁丵侾俈 = 217,
侓儔儞僗俁丵侾俉 = 218,
侓儔儞僗俁丵侾俋 = 219,
侓儔儞僗俁丵俀侽 = 220,
侓儔儞僗俁丵俀侾 = 221,
侓儔儞僗俁丵俀俀 = 222,
侓儔儞僗俁丵俀俁 = 223,
侓儔儞僗俁丵俀係 = 224,
侓儔儞僗俁丵俀俆 = 225,
侓儔儞僗俁丵俀俇 = 226,
侓儔儞僗俁丵俀俈 = 227,
侓儔儞僗俁丵俀俉 = 228,
侓儔儞僗俁丵俀俋 = 229,
侓儔儞僗俁丵俁侽 = 230,
侓儔儞僗俁丵俁俉 = 238,

侓儔儞僗係丵侽侾 = 301,
侓儔儞僗係丵侽俀 = 302,
侓儔儞僗係丵侽俁 = 303,
侓儔儞僗係丵侽係 = 304,
侓儔儞僗係丵侽俆 = 305,
侓儔儞僗係丵侽俇 = 306,
侓儔儞僗係丵侽俈 = 307,
侓儔儞僗係丵侽俉 = 308,
侓儔儞僗係丵侽俋 = 309,
侓儔儞僗係丵侾侽 = 310,
侓儔儞僗係丵侾侾 = 311,
侓儔儞僗係丵侾俀 = 312,
侓儔儞僗係丵侾俁 = 313,
侓儔儞僗係丵侾係 = 314,
侓儔儞僗係丵侾俆 = 315,
侓儔儞僗係丵侾俇 = 316,
侓儔儞僗係丵侾俈 = 317,
侓儔儞僗係丵侾俉 = 318,
侓儔儞僗係丵侾俋 = 319,
侓儔儞僗係丵俀侽 = 320,
侓儔儞僗係丵俀侾 = 321,
侓儔儞僗係丵俀俀 = 322,
侓儔儞僗係丵俀俁 = 323,
侓儔儞僗係丵俀係 = 324,
侓儔儞僗係丵俀俆 = 325,
侓儔儞僗係丵俀俇 = 326,
侓儔儞僗係丵俀俈 = 327,
侓儔儞僗係丵俀俉 = 328,
侓儔儞僗係丵俀俋 = 329,
侓儔儞僗係丵俁侽 = 330,
侓儔儞僗係丵俁侾 = 331,
侓儔儞僗係丵俁俀 = 332,
侓儔儞僗係丵俁俁 = 333,
侓儔儞僗係丵俁係 = 334,
侓儔儞僗係丵俁俆 = 335,

..2005/ 1/21(Fri) 21:00[1562]
++ af (同好)23灌
侓儔儞僗係丵俁俇 = 336,
侓儔儞僗係丵俁俈 = 337,
侓儔儞僗係丵俁俉 = 338,
侓儔儞僗係丵俁俋 = 339,
侓儔儞僗係丵係侽 = 340,
侓儔儞僗係丵係侾 = 341,
侓儔儞僗係丵係俀 = 342,

侓儔儞僗俆俢丵侽侾 = 401,
侓儔儞僗俆俢丵侽俀 = 402,
侓儔儞僗俆俢丵侽俁 = 403,
侓儔儞僗俆俢丵侽係 = 404,
侓儔儞僗俆俢丵侽俆 = 405,
侓儔儞僗俆俢丵侽俇 = 406,
侓儔儞僗俆俢丵侽俈 = 407,
侓儔儞僗俆俢丵侽俉 = 408,
侓儔儞僗俆俢丵侽俋 = 409,
侓儔儞僗俆俢丵侾侽 = 410,
侓儔儞僗俆俢丵侾侾 = 411,
侓儔儞僗俆俢丵侾俀 = 412,
侓儔儞僗俆俢丵侾俁 = 413,
侓儔儞僗俆俢丵侾係 = 414,
侓儔儞僗俆俢丵侾俆 = 415,
侓儔儞僗俆俢丵侾俇 = 416,
侓儔儞僗俆俢丵侾俈 = 417,
侓儔儞僗俆俢丵侾俉 = 418,
侓儔儞僗俆俢丵侾俋 = 419,
侓儔儞僗俆俢丵俀侽 = 420,
侓儔儞僗俆俢丵俀侾 = 421,
侓儔儞僗俆俢丵俀俀 = 422;

这个是常数定义

..2005/ 1/21(Fri) 21:00[1563]
++ af (同好)24灌
///////////////////////////////////////////////////////////////////////////////
// Story.jaf
// Coder.Yudai Senoo

#Scene001(void)
{
BackgroundSet(仭僼傽儞僞僕乕丒幒撪侾);
LeftCharSet(仠傾儕僗);
RightCharSet(仠側偟);

BGM_Play(侓儔儞僗俁丵侽俆);
僋儘僗僼僃乕僪();

‘Start the Game1′ A;

jump Scene002;
}

#Scene002(void)
{
BackgroundSet(仭僼傽儞僞僕乕丒奨侾);
LeftCharSet(仠儔儞僗);
RightCharSet(仠僔傿儖);

億儕僑儞夞揮倄幉();

‘Select the choice!’ B;

int nSelect = ChoiceTwo(“Choice1″, “Choice2″);

MessageClear();

if (nSelect == 1) {
‘Selected choice 1′ A;
jump Scene003A;
}

‘Selected choice 2′ A;

jump Scene003B;
}

#Scene003A(void)
{
BackgroundSet(仭妛墍丒僌儔僂儞僪);
LeftCharSet(仠僴僯乕);
RightCharSet(仠僴僯乕僉儞僌);

僋儘僗僼僃乕僪儌僓僀僋();

‘Start shocking’ A;

Shock();

‘Stop shocking’ A;

jump Scene004;
}

#Scene003B(void)
{
BackgroundSet(仭妛墍丒壆忋);
LeftCharSet(仠儕傾);
RightCharSet(仠儕僢僋);

傏偐偟僋儘僗僼僃乕僪();

‘Start random’ A;

int nSelect = RAND(4);

if (nSelect == 1) {
‘Today is weather is fine.’A;
}
if (nSelect == 2 || nSelect == 3) {
‘Today is weather is cloudy.’A;
}
if (nSelect == 4) {
‘Today is weather is rainy.’A;
}

‘Random end.’ A;

jump Scene004;
}

#Scene004(void)
{
BackgroundSet(仭妛墍丒楲壓);
LeftCharSet(仠巙捗崄);
RightCharSet(仠尒摉偐側傒);

慄宍僽儔乕();

LeftAlphaMessage();

Name(仯巙捗崄);
‘Left person speak’ R;
‘Now change’ A;

RightAlphaMessage();

Name(仯尒摉偐側傒);
‘Right person speak’ R;
‘Now change’ A;

NormalMessage();

‘Change to normal message box’ A;

jump Scene001;
}

..2005/ 1/21(Fri) 21:02[1564]
++ af (同好)25灌
///////////////////////////////////////////////////////////////////////////////
// ADVFunc.jaf
// Coder.Yudai Senoo

string g_szSaveKeyName = “AFStudio001″ + __DATE__ + __TIME__;

void Init(void)
{
g_ADVEngine.Recreate();

}

void BackgroundSet(int nCG)
{
g_ADVEngine.SetBack(nCG);

}

void LeftCharSet(int nCG)
{
g_ADVEngine.SetLeftChara(nCG);

}

void RightCharSet(int nCG)
{
g_ADVEngine.SetRightChara(nCG);

}
//————————–ADD————————–
//void AF_BLEND_AMAP_ALPHA(int nDest, int nDx, int nDy, int nSrc, int nSx, int nSy, int nWidth, int nHeight, int nAlpha)
//{
// nDest=SP_GET_UNUSE_NUM();
// CG_BLEND_AMAP_ALPHA(nDest,nDx,nDy,nSrc,nSx,nSy,nWidth,nHeight,nAlpha);
//}
//————————–ADD————————–
// ChoiceBox
int ChoiceTwo(string szA, string szB)
{
int nSelect;

for (;;) {
// Config ChoiceBox
menu_metrics_t mm;
mm.tm.nSize = 32;
mm.nH = 32;
mm.nWindowAlignX = 3;
mm.nWindowAlignY = 3;
mm.nCancelOK = true;
MENU_SET_METRICS(mm);

MENU_ADD(1, szA);
MENU_ADD(2, szB);

nSelect = MENU_SELECT();

if (nSelect == -1) {
SystemMenu();
}
else break;
}

return nSelect;

}

// MessageClear
void MessageClear(void)
{
MES_CLS();

}

void NormalMessage(void)
{
g_ADVEngine.SetMsgWindowInfo(0);

}

void LeftAlphaMessage(void)
{
g_ADVEngine.SetMsgWindowInfo(1);

}

void RightAlphaMessage(void)
{
g_ADVEngine.SetMsgWindowInfo(2);

}

// SystemMenu
bool SystemMenu(void)
{
if (!KEY_IS_DOWN(VK_RBUTTON)) return true;

KEY_CLEAR();

menu_metrics_t mm;
mm.tm.nSize = 32;
mm.nH = 32;
mm.nWindowAlignX = 3;
mm.nWindowAlignY = 3;
mm.nCancelOK = true;
MENU_SET_METRICS(mm);

MENU_ADD(0, “Clear”);
MENU_ADD(1, “Save”);
MENU_ADD(2, “Load”);
MENU_ADD(3, “Cancel”);

int nSelect = MENU_SELECT();

switch (nSelect) {
case 0:
HideMsgFrame(true);
break;
case 1:
SaveMenu();
break;
case 2:
LoadMenu();
break;
}

return false;

}

..2005/ 1/21(Fri) 21:02[1565]
++ af (同好)26灌
// SaveMenu
void SaveMenu(void)
{
menu_metrics_t mm;
mm.tm.nSize = 32;
mm.nH = 32;
mm.nWindowAlignX = 3;
mm.nWindowAlignY = 3;
mm.nCancelOK = true;
MENU_SET_METRICS(mm);

MENU_ADD(0, “Save1″);
MENU_ADD(1, “Save2″);
MENU_ADD(2, “Save3″);
MENU_ADD(-1, “Cancel”);

int nSelect = MENU_SELECT();

switch (nSelect) {
case 0:
case 1:
case 2:
{
string szFileName;
szFileName = “AFStudio%02d.asd” % nSelect;

int nResult;
if (SACT_RESUME_SAVE(g_szSaveKeyName, szFileName, nResult)) {
// After Save
if (nResult == 0) {
// Save Fail
system.MsgBox(“Saving Fail!”);
}
}
else {
// After Load
SP_DEL_ALL();
Init();
夞揮僀儞();
MES_MARK_START();
MSG_DRAW_LAST();
}
}
break;
}

}

// LoadMenu
void LoadMenu(void)
{
menu_metrics_t mm;
mm.tm.nSize = 32;
mm.nH = 32;
mm.nWindowAlignX = 3;
mm.nWindowAlignY = 3;
mm.nCancelOK = true;
MENU_SET_METRICS(mm);

MENU_ADD(0, “Load1″);
MENU_ADD(1, “Load2″);
MENU_ADD(2, “Load3″);
MENU_ADD(-1, “Cancel”);

int nSelect = MENU_SELECT();

switch (nSelect) {
case 0:
case 1:
case 2:
{
string szFileName;
szFileName = “AFStudio%02d.asd” % nSelect;

// Check Save Files whether exist
if (!system.ExistSaveFile(szFileName)) {
system.MsgBox(“Saving files does not exist!”);
break;
}

// StopBGM
g_ADVEngine.StopBGM();

SACT_RESUME_LOAD(g_szSaveKeyName, szFileName);

// Load Fail
system.MsgBox(“Loading Fail!”);
}
break;
}

}

// Title
void Title(void)
{
// Init
REGISTER_MSG_KEY_WAIT_CALLBACK(&SystemMenu);

// ChoiceBox Config
menu_metrics_t mm;
mm.tm.nSize = 32;
mm.nH = 32;
mm.nX = 100;
mm.nY = 100;
MENU_SET_METRICS(mm);

for (;;) {
g_ADVEngine.SetShowMsgWindow(false);

MENU_ADD(0, “START”);
MENU_ADD(1, “LOAD GAME”);
MENU_ADD(2, “ALL CHARACTERS”);
if (Check_BGM_Exist(1)) {
MENU_ADD(3, “BGM Test”);
}

int nSelect = MENU_SELECT();
switch (nSelect) {
case 0:
BackgroundSet(仭Welcome);
g_ADVEngine.SetShowMsgWindow(true);

jump Scene001;
break;
case 1:
LoadMenu();
break;
case 2:
BackgroundSet(仭Welcome);
g_ADVEngine.SetShowMsgWindow(true);

AllCharTest();
break;
case 3:
g_ADVEngine.SetShowMsgWindow(true);
BGM_Test();
break;
}
}

}

// Shock
void Shock(void)
{
SACT_QUAKE_SCREEN(128, 128, 1000, false);

}

// BGM
void BGM_Play(int nBGM)
{
g_ADVEngine.PlayBGM(nBGM);

}

void BGM_Stop(void)
{
g_ADVEngine.StopBGM();

}

bool Check_BGM_Exist(int nBGM)
{
return g_ADVEngine.IsExistBGM(nBGM);

}

bool BGM_IsPlay(void)
{
return g_ADVEngine.IsPlayBGM();

}

//TEST
//
void AllCharTest(void)
{
int i;

BackgroundSet(仭妛墍丒嫵幒);
僋儘僗僼僃乕僪();

for (i = 0; i < 11000; i++) {
if (!CG_IS_EXIST(i)) continue;

LeftCharSet(i);
僋儘僗僼僃乕僪(0);

for (;;) {
if (KC_IsNextPage()) {
KEY_CLEAR();
break;
}
}
}

}

void BGM_Test(void)
{
int i = 1;

for (;;) {
if (Check_BGM_Exist(i)) {
BGM_Play(i);

S(“%03D” % i);
‘Song Playing……’A;
}
i += 1;
if (i > 500) i = 1;
}
}

// ShowName
void Name(string szName)
{
// Aims at reset
sact_text_metrics_t tmBackup;
MES_GET_METRICS(tmBackup);

MES_SET_COLOR(255, 128, 128);
MES_SET_SIZE(24);

S(“亂 %s 亃” % szName);
R();

// reset
MES_SET_METRICS(tmBackup);

}

..2005/ 1/21(Fri) 21:03[1566]
++ af (同好)27灌
///////////////////////////////////////////////////////////////////////////////
// CADVEngine.jaf
// Coder.Yudai Senoo

class CADVEngine {
// 暻巻
CADVSprite m_spWallpaper;

// 攚宨
CADVSprite m_spBack;

// 棫偪僉儍儔榞
CADVSprite m_spLeftFrame,m_spRightFrame;

// 棫偪僉儍儔
CADVSprite m_spLeftChara,m_spRightChara;

// 儊僢僙乕僕僂傿儞僪僂
array@CADVSprite m_aspMsgWindow[3];
int m_nSelectMsgWindow;

// 俛俧俵
int m_nBGM;

// 忣曬
int m_nViewWidth,m_nViewHeight;

private:
void SetWaitMarkInfo(int nNum);

public:
CADVEngine(void);

// 嵞峔抸
void Recreate(void);

// 暻巻曄峏
void SetWallpaper(int nCG);

// 攚宨曄峏
void SetBack(int nCG);

// 僉儍儔曄峏
void SetLeftChara(int nCG);
void SetRightChara(int nCG);

// 儊僢僙乕僕僂傿儞僪僂愗傝懼偊
void SetMsgWindowInfo(int nNum);
void SetShowMsgWindow(bool bShow);

// 俛俧俵
void PlayBGM(int nBGM);
void StopBGM(void);
bool IsExistBGM(int nBGM);
bool IsPlayBGM(void);

//PicSwitch
void PicSwitch(int nCG, ref cg_metrics_t cm);

};

CADVEngine::CADVEngine(void)
{
// 價儏乕僒僀僘庢摼
SCREEN_GET_SIZE(m_nViewWidth, m_nViewHeight);

// 倅僆乕僟乕愝掕
m_spWallpaper.SetZ(1);
m_spBack.SetZ(2);
m_spLeftFrame.SetZ(3);
m_spLeftChara.SetZ(4);
m_spRightFrame.SetZ(5);
m_spRightChara.SetZ(6);

// 暻巻愝掕
m_spWallpaper.SetCG(35000);

// 僉儍儔榞愝掕
m_spLeftFrame.SetCG(30000);
m_spRightFrame.SetCG(30000);

m_spRightFrame.SetPos(m_nViewWidth – m_spRightFrame.GetWidth(), 0);

m_spLeftFrame.SetShow(false);
m_spRightFrame.SetShow(false);

// 儊僢僙乕僕僂傿儞僪僂榞
m_aspMsgWindow[0].SetCG(30001);
m_aspMsgWindow[1].SetCG(30002);
m_aspMsgWindow[2].SetCG(30003);

m_aspMsgWindow[0].SetPos(0, m_nViewHeight – m_aspMsgWindow[0].GetHeight());
m_aspMsgWindow[1].SetPos(0, m_nViewHeight – m_aspMsgWindow[0].GetHeight());
m_aspMsgWindow[2].SetPos(m_nViewWidth – m_aspMsgWindow[2].GetWidth(), m_nViewHeight – m_aspMsgWindow[0].GetHeight());

m_aspMsgWindow[0].SetZ(8);
m_aspMsgWindow[1].SetZ(8);
m_aspMsgWindow[2].SetZ(8);

// 儊僢僙乕僕僂傿儞僪僂愝掕
SetMsgWindowInfo(0);

}

void CADVEngine::SetMsgWindowInfo(int nNum)
{
int i;

m_nSelectMsgWindow = nNum;

// 昞帵僼儔僌愗傝懼偊
for (i = 0; i < m_aspMsgWindow.Numof(); i++) {
m_aspMsgWindow[i].SetShow(i == nNum);
}

SP_SET_TEXT_POS(m_aspMsgWindow[nNum].GetSp(), 16, 24);
SP_SET_TEXT_HOME(m_aspMsgWindow[nNum].GetSp(), 16, 24);

MES(m_aspMsgWindow[nNum].GetSp());

// 儊僢僙乕僕暥帤憰忺愝掕
sact_text_metrics_t tm;
tm.nSize = 32;
tm.nShadowPixelL = 1;
tm.nShadowPixelR = 1;
tm.nShadowPixelU = 1;
tm.nShadowPixelD = 1;
tm.nShadowColorR = 0;
tm.nShadowColorG = 0;
tm.nShadowColorB = 0;

MES_SET_METRICS(tm);

// 儊僢僙乕僕暥帤僗僺乕僪愝掕
MES_SET_WAIT(50);

// 僉乕擖椡懸偪儅乕僋
SetWaitMarkInfo(nNum);

}

void CADVEngine::SetShowMsgWindow(bool bShow)
{
SP_SET_SHOW(m_aspMsgWindow[m_nSelectMsgWindow].GetSp(), bShow);

}

void CADVEngine::SetWaitMarkInfo(int nNum)
{
mes_mark_metrics_t mmm;
mmm.AddCG(36000, 36001, 36002, 36003, 36004, 36005, 36006, 36007);
mmm.SetTimeInterval(250);

switch (nNum) {
case 0:
mmm.SetPos(750, 560);
break;
case 1:
mmm.SetPos(430, 550);
break;
case 2:
mmm.SetPos(770, 550);
break;
}

MES_MARK_SET(mmm);

}

void CADVEngine::Recreate(void)
{
int i;

m_spWallpaper.Recreate();
m_spBack.Recreate();
m_spLeftFrame.Recreate();
m_spRightFrame.Recreate();
m_spLeftChara.Recreate();
m_spRightChara.Recreate();

for (i = 0; i < m_aspMsgWindow.Numof(); i++)
m_aspMsgWindow[i].Recreate();

// 儊僢僙乕僕僂傿儞僪僂愝掕
SetMsgWindowInfo(m_nSelectMsgWindow);

// 俛俧俵嵞惗
int nBGM = m_nBGM;
StopBGM();
PlayBGM(nBGM);

}

void CADVEngine::SetWallpaper(int nCG)
{
m_spWallpaper.SetCG(nCG);

}

void CADVEngine::SetBack(int nCG)
{
m_spBack.SetCG(nCG);

}

void CADVEngine::SetLeftChara(int nCG)
{
m_spLeftChara.SetCG(nCG);

m_spLeftFrame.SetShow(m_spLeftChara.IsExist());

}

void CADVEngine::SetRightChara(int nCG)
{
m_spRightChara.SetCG(nCG);
m_spRightFrame.SetShow(m_spRightChara.IsExist());

if (m_spRightChara.IsExist()) {
m_spRightChara.SetPos(m_nViewWidth – m_spRightChara.GetWidth(), 0);
}

}

..2005/ 1/21(Fri) 21:04[1567]
++ af (同好)28灌

void CADVEngine::PlayBGM(int nBGM)
{
if (nBGM > 0 && MSC_IS_EXIST(nBGM)) {
MSC_PLAY(nBGM, 500);
}

m_nBGM = nBGM;

}

void CADVEngine::StopBGM(void)
{
if (m_nBGM > 0 && MSC_IS_PLAY()) {
MSC_STOP(500);
}

m_nBGM = 0;

}

bool CADVEngine::IsExistBGM(int nBGM)
{
if (nBGM > 0) {
return MSC_IS_EXIST(nBGM);
}

return false;

}

bool CADVEngine::IsPlayBGM(void)
{
return MSC_IS_PLAY();

}

// 僀儞僗僞儞僗
CADVEngine g_ADVEngine;

//————————–ADD————————–
//Added by af 05.1.20
//
void CADVEngine::PicSwitch(int nCG, ref cg_metrics_t cm)
{
// mes_mark_metrics_t mmm;
// mmm.AddCG(36000, 36001, 36002, 36003, 36004, 36005, 36006, 36007);
// mmm.SetTimeInterval(250);
//
//
// MES_MARK_SET(mmm);
//int CG_GET_METRICS(int nCG, ref cg_metrics_t cm);
//cg_metrics_t
//
//
//
// __DATE__
//
//
// cg_metrics_t
//
}

//————————–ADD——-

..2005/ 1/21(Fri) 21:04[1568]
++ af (同好)29灌
///////////////////////////////////////////////////////////////////////////////
// CADVSprite.jaf
// Coder.Yudai Senoo

class CADVSprite {
int m_nSp; // 僗僾儔僀僩斣崋

int m_nCG; // 尰嵼撉傒崬傫偱偄傞俠俧斣崋

int m_nX, // 昞帵嵗昗
m_nY,
m_nZ; // 倅抣

bool m_bShow; // 昞帵僼儔僌

public:
CADVSprite(void);

// 俠俧偺撉傒崬傒
void SetCG(int nCG);

// 嵗昗愝掕
void SetPos(int nX, int nY);
void SetZ(int nZ);

// 昞帵僼儔僌愝掕
void SetShow(bool bShow);

// 僗僾儔僀僩斣崋偺庢摼
int GetSp(void) { return m_nSp; }

// 僗僾儔僀僩僒僀僘偺庢摼
// 僗僾儔僀僩偑柍偄応崌偼0偑曉傝傑偡
int GetWidth(void);
int GetHeight(void);

// 嵞峔抸
void Recreate(void);

// 僗僾儔僀僩偑懚嵼偡傞偐偳偆偐挷傋傞
bool IsExist(void) { return m_nSp != -1; }

};

CADVSprite::CADVSprite(void)
{
m_nSp = -1;
m_nCG = -1;

m_bShow = true;

}

void CADVSprite::SetCG(int nCG)
{
m_nCG = nCG;

if (!CG_IS_EXIST(nCG)) {
if (m_nSp != -1) {
SP_DEL(m_nSp);
m_nSp = -1;
}

return;
}

if (m_nSp == -1)
m_nSp = SP_GET_UNUSE_NUM();

SP_SET_CG(m_nSp, nCG);
SP_SET_POS(m_nSp, m_nX, m_nY);
SP_SET_Z(m_nSp, m_nZ);

SP_SET_SHOW(m_nSp, m_bShow);

}

void CADVSprite::SetPos(int nX, int nY)
{
m_nX = nX;
m_nY = nY;

if (m_nSp != -1) {
SP_SET_POS(m_nSp, nX, nY);
}

}

void CADVSprite::SetZ(int nZ)
{
m_nZ = nZ;

if (m_nSp != -1) {
SP_SET_Z(m_nSp, nZ);
}

}

void CADVSprite::SetShow(bool bShow)
{
m_bShow = bShow;

if (m_nSp != -1) {
SP_SET_SHOW(m_nSp, m_bShow);
}

}

void CADVSprite::Recreate(void)
{
m_nSp = -1;
SetCG(m_nCG);

}

int CADVSprite::GetWidth(void)
{
if (m_nSp == -1) return 0;

int nWidth, nHeight;
SP_GET_SIZE(m_nSp, nWidth, nHeight);

return nWidth;

}

int CADVSprite::GetHeight(void)
{
if (m_nSp == -1) return 0;

int nWidth, nHeight;
SP_GET_SIZE(m_nSp, nWidth, nHeight);

return nHeight;

}

..2005/ 1/21(Fri) 21:05[1569]
++ af (同好)30灌
终于写完了,希望能给后来者一些帮助.

错误处肯定很多.我真在不断完善中

..2005/ 1/21(Fri) 21:06[1570]
一月
20
2005

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等电影了(目前用它看可爱的麻衣中……:)

一月
3
2005

SYSTEM4 SDK实在是爽

5
作者:AirForce

SYSTEM4 SDK实在是爽啊,和C++,JAVA没什么区别!

系统性能也很好……

一月
3
2005

SYSTEM4.0 开发教程2

4
作者:AirForce

何かを表示させないことには面白くないので、 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サイズの赤い塗りつぶされた四角が表示されたと思います。

では、ソースコードの解説に入ります。いきなり理解するのは難しいので、これはこういうものなんだと覚えるぐらいで良いと思います。

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関数を呼び続けるコードです。

一月
3
2005

SYSTEM4.0 开发教程1

2
作者:AirForce

まず、開発キットの中に入っている「開発環境」フォルダを、どこか適当な場所へコピーしましょう。とりあえずここでは、”C:\開発”の下へコピーしたことにします。

次に、「開発環境」のフォルダ名を適当な名前に変更しておきましょう。とりあえず、「サンプル」としておきます。

各種ツールの中の「Sys42IDE」の中に「Sys42IDE.exe」という実行ファイルがあります。これは統合環境と呼ばれるもので、ソースコードをコンパイルしたり、コンパイルして作成した実行バイナリを起動するのに使います。

まずはSys42IDE.exeを実行してみましょう。

こんなウィンドウが開かれると思います。

では、先ほどコピーした「サンプル」の中にプロジェクトファイルがあるので、それを開いてみましょう。

ウィンドウメニューの「ファイル(F)」→「プロジェクトを開く(O)…」を選択してください。するとダイアログが開かれますので、先ほどのフォルダの中にある「サンプル.pje」ファイルを開きましょう。

プロジェクトファイルの読み込みに成功すれば、アウトプットウィンドウに、「プロジェクト【サンプル】を読み込みました」と表示されると思います。

では早速、ビルドしてみましょう。ツールバー上にある「ビルドボタン」を押してみてください。

アウトプットウィンドウにずらずらと何か表示されましたでしょうか。最後に「OK」と表示されていれば、ビルド成功です。

補足:

「ビルド」とは、ソースコードをコンパイルしてSystem40.exeで実行可能な実行バイナリを作成することです。ソースコードを書いただけでは何も実行できないので注意しましょう。

ビルドが完了しましたので、もう実行できる状態になっています。ツールバーにある「実行ボタン」を押してください。

この人が走っているみたいなボタンです。

真っ黒なウィンドウが表示されたかと思います。このサンプルプログラムには特に何も処理が書かれていないので、これで正解です。正しく実行されたようです。

プログラムコードが書かれたソースファイルを読み書きするのはメモ帳でも出来ますが、テキストエディタと呼ばれるソフトウェアを使用したほうが、より便利です。持っていない方は、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です。
十二月
22
2004
///////////////////////////////////////////////////////////////////////////////
//  僔僫儕僆.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;
}
十二月
22
2004

十二月
20
2004

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
  • 大悪司(オープニング不可)
  • 妻みぐい(オープニング不可)
页面: 上一页 1 2 3 ...6 7 8 9 10 11 12 13 14 15 16 下一页