AthenaNPCScript

Eڎ
	OD͂߂
	PDNPC̒`
	QDXNvg̐Ɗ{IȋK
	RDߕyъ֐yђ萔x
	SDG[bZ[W
	TDƂ

OD͂߂
	͂̕Ɋ܂܂֐⏑͍ŐVsnapshotɊ܂܂npc_sample.txtQlɂALqĂ܂B
	͂̕\ĂGfB^[̓slA^u<tab>ACӂ̒l<n>ƕ\L܂B
	Wnł̐}QlɂĂB
	Y̑
	(  0,200)--(200,200)
	    |          |
	    |          |
	    |          |
	    |          |
	    |          |
	(  0,  0)--(200,  0)X̑

PDNPC̒`
	athenafBNgȉȂǂł悢iłathena/scriptȉĵŁAƂ肠txt쐬ĂB
	܂NPĈLq܂iꍇɂĂNPCƂ͕sK؁jB

	[v|CgFMAPԂ̈ړs܂B
		<gatname>,<x>,<y><tab>warp<tab><displayname><tab><dx>,<dy>,<destination_gatname>,<destination_x>,<destination_y>

		gatname			[v|Cg̒uMAPt@Cw肵܂B.gat͖YȂłB
		x			[v|Cg̒u鉡Ww肵܂B
		y			[v|Cg̒ucWw肵܂B
		displayname		[v|CgʎqłBdĂ\܂BfobOŎg܂B
		dx			[v|Cg̉ʔ͈͂łB
		dy			[v|Cg̏cʔ͈͂łBԂ~[WɂȂĂƎv܂B
			dx,dy̗ix,yjF
				0,0	1,0		2,2
				@		
						
				@		
				@			
				@			
				@			
				@			

				yс̃Z𓥂߂΁A[vƂƂłB

		destination_gatname	[vłB.gat͂ĂȂĂ\܂B
		destination_x		[v扡WłB
		destination_y		[vcWłB

		ӎF
		[v|Cgʒuɕ͈ʒuĂꍇAŌɋLqĂ̂̂ݕ\܂B
		[v̍Wړ֎~ZꍇAMAP̂ǂɃ[v܂B

	X^[FX^[̏oǗ܂B
		<gatname>,<x>,<y>,<xs>,<ys><tab>monster<tab><displayname><tab><npcid>,<number>,<spawn_delay1>,<spawn_delay2>[,<event>]

		gatname			oMAPt@Cw肵܂B
		x			o鉡Ww肵܂B0Ń_B
		y			ocWw肵܂B0Ń_B
		xs			o鉡͈͂w肵܂B
		ys			oc͈͂w肵܂B
			xs,ys̗ix,yjF
				0,0	2,1
				@	
				@	
				@	

				yс̃Z烂X^[o܂B

		displayname		o郂X^[̕\łB
		npcid			mob_db.txtQƂĂBo郂X^[idw肵܂B
		number			MAPyяo͈͂ł̍őołB
		spawn_delay1		oĂw肳ꂽ~b҂čďo܂B
		spawn_delay2		SĂw肳ꂽ~b҂čďo܂B
		event			w肵Cxg𔭐܂BȗB

		ӎF
		spawn_delay1spawn_delay2́AʂƂĂǂɂłxďo邩𔻒fAD悵܂B

	XFACe̔̔s܂B
		<gatname>,<x>,<y>,<direction><tab>shop<tab><displayname><tab><npcid>,<item_id>:<price>

		gatname			zuMAPt@Cw肵܂B
		x			zu鉡Ww肵܂B
		y			zucWw肵܂B
		direction		w肵܂B
			direction̏ڍׁF
				VOP
				U@Q
				TSR

		displayname		zuX̕\w肵܂B
		npcid			zuX̕\XvCgIDw肵܂B
		item_id			zuXɒuACeIDw肵܂Bitem_dbQƂĂB
		price			item_idŎw肵ACe̒liݒ肵܂B
						w肷item_db.txtŐݒ肳ꂽliɂȂ܂B
			<item_id>:<price>,iJ}j؂ŕwł܂B

	XNvgFNPC쐬܂B
		<gatname>,<x>,<y>,<direction><tab>script<tab><displayname><tab><npcid>,<xs>,<ys>,{ <script> ... }

		gatname			zuMAPt@Cw肵܂B
		x			zu鉡Ww肷B
		y			zucWw肷B
		direction		w肵܂B
		displayname		zuNPC̕\w肵܂Bnpcid-1̏ꍇACxgƂȂ܂B
					\ʓCxgꍇA\::ʎqƋLq邱Ƃł܂B
		npcid			zuNPC̕\XvCgIDw肵܂B-1w肷mapCxgɂȂ܂B
		xs			XNvgs鉡͈͂w肵܂B
		ys			XNvgsc͈͂w肵܂B[vƓłB

		{}iJbRj̒ɂĂ̐B
		sœZ߂肷̂͂߂ł܂Bł
		gatname,
		{
			//Rg
			script;
		label:
			script;
		}
		ƌŏ܂傤BRgAEg//ARgGA/*,*/A
		XNvgɂ;iZ~RjYꂸɁB

		u<gatname>,<x>,<y>,<direction><tab>v̕Au-<tab>vƂ邱ƂŁA
		}bvT[o[ɂ݂͑ĂĂAۂ̃}bvɂ͔zuȂNPC쐬ł܂B
		͌q̃fvP[gXNvgŃRs[ƂĎgp܂B

	fvP[gXNvgFNPCĩXNvgjRs[܂B
		<gatname>,<x>,<y>,<direction><tab>duplicate(<source>)<tab><displayname><tab><npcid>,<xs><ys>

		sourceȊÕp[^͒ʏ̃XNvgƓłB
		sourceɂ̓Rs[ƂȂNPC̎ʖ͂܂B

		Rs[NPC}bvɔzuĂꍇA}bvłKv܂B
		}bvɔzuĂȂꍇ́Aǂ̃}bvւRs[\łB

	[U[`֐XNvgFXNvgĂяo郆[U[`֐쐬܂B
		function<tab>script<tab><name><tab>{ <script> ... }

		callfunc߂ŌĂяoƂ̏o֐쐬܂B
		֐Ăяögetarg֐ŏ邱Ƃo܂B
		֐̍Ōɂ͕Kreturn߂ĂB

	}bvtOFMAP̃[Ǘ܂B
		<gatname><tab>mapflag<tab><const>

		gatname			[ݒ肷MAPt@Cw肵܂B
		const			[̓ew肵܂B

		consẗꗗB
			nosave<tab><gatname>,<x>,<y>
				OC<gatname>̍W<x>,<y>Ɉړ܂B
			nomemo<tab>dummy
				邱Ƃ֎~܂B
			notereport<tab>dummy
				SavePoint܂Randomw肵warpA[v|[^Ae|[g֎~܂B
			nobranch<tab>dummy
				Ö؂̎}̎gp֎~܂B
			pvp<tab>dummy
				PVP\MAPɂȂ܂B
			nopenalty<tab>dummy
				fXyieBɂȂ܂B
			pvp_noparty<tab>dummy
				PVPɂāAp[eB[UsɂȂ܂B
			pvp_noguild<tab>dummy
				PVPɂāAMhUsɂȂ܂B
			gvg<tab>dummy
				V[Y[hɂȂ܂B
			gvg_noparty<tab>dummy
				V[Y[hɂāAp[eB[UsɂȂ܂B

QDXNvg̐Ɗ{IȋK
	
		t̐ƂPUi\Lgp邱Ƃł܂B
		t͔p123456ƋLq܂B
		PUi\L0x120xtċLq܂B

	
		"i_uNH[e[Vjň͂񂾕͕Ƃĕ]܂B
		"i_uNH[e[VjLꍇ\"ƋLq܂B
		\Lꍇ\\ƋLq܂B
		Ȃ\֌W̕ɊւĂ^000000̐FύXgƂł܂B
		ϐ + ""Ƃ񌋍ł܂B

	PZq
		ȉ̐lp̒PZqpӂĂ܂B
			-	t]iQ̕␔j
			~	rbg_ےiP̕␔j
			!	_ے

	QZq
		ȉQZq͐lƕœ삪قȂ܂B
			+	Z/
			lǂ̏ꍇ͉Z܂B
			ȊȌꍇ͕Ƃ݂ȂČ܂B

		ȉ̂QZq͐lpłB
			-	Z
			*	Z
			/	Z
			%	]
			&	rbg_
			|	rbg_a
			^	rbgrI_a
			&&	_
			||	_a
			>>	EVtg
			<<	Vtg

		ȉ̂QZq͐lǂA܂͕ǂ̔rs܂B
		̊֌WZq͊֌W藧1A藧Ȃ0Ԃ܂B
			==	
			!=	Ȃ
			>	傫
			>=	傫iȏj
			<	菬ij
			<=	菬iȉj

	ϐ
		ppgp邱Ƃł܂B
		ϐ̃XR[vƃCt^C̓vtBbNXɂw肵܂B
		̃G̓vtBbNXƂĈ̂ŒӂĂB
		(̃G͍̓ۏႳȂ̂ŎgpȂŉ)

			vtBbNX	XR[v		Ct^C
				(Ȃ)	LN^[		iI
				@	LN^[		ꎞI
				l				iȂj
				$	}bvT[o[		iI
				$@	}bvT[o[		ꎞI
				#	AJEg		iI
				##	AJEg(S[h)	iI

		܂Aʂ̈ꎞIȕϐ@, ۑKv̂ϐ
		vtBbNXȂASẴLN^[ŋLׂϐ $A
		AJEgŋLׂϐ #  ## gp邱ƂɂȂ܂B

		܂Aϐ̌^̓|XgtBbNXɂw肵܂B
		A^̓LN^[ꎞϐAсA
		iI/ꎞI}bvT[o[ϐł̂ݎgpł܂B
		ivtBbNX @A$A$@ j

			|XgtBbNX	^
				(Ȃ)		
				$		

		<>	@hoge$	^ꎞILN^[ϐ
			hoge	l^iILN^[ϐ
			$hoge	l^iISLN^[Lϐ

		ꎞIłȂϐ͑pׂł͂܂B
		ۑKv̂Ȃ̂͋ɗ͈ꎞϐōς܂ׂłB
		ۑKv̂Ȃ̂͂悭lĂB
		ɉiIȃLN^[/AJEgϐ́Aɐ܂B
		gpIēxƎgp邱ƂȂƂ킩Ăϐ
		l0ɐݒ肷邱Ƃō폜邱Ƃo܂B

	zϐ
		ϐ̌Ɋ [ ] Ŋw肷邱ƂŔzϐɂȂ܂B
		ϐ"["̊Ԃɋ󔒕邱Ƃ͂ł܂B

		<>	hoge[10]	fuga[ @temp ]

		z̗vfԍ0`127wł܂Aԍ0͓̕ϐ
		lL܂BƂ΁Ahoge[0]  hoge ͓ϐłB

		zϐ͈ꎞILN^[ϐAꎞI/iI}bvT[o[ϐŎgpł܂B
		ϐ̌^͐lA񗼕Ƃpł܂B

	x
		ppуA_[o[gpł܂B
		ϐ▽߂ȂǂƋʂ邽 L_ 擪ɂ邱Ƃ܂B
		L_hoge: ƂɎgp܂B
		ifmenũWvɎw肳܂B

	萔
		athenadb/const.txtɏ萔񋟂܂B
		XNvgł̂ݎgp\łB

	ߍݕϐ
		bvC[̃Xe[^XȂǂQƂł܂B
		db/const.txtɋLqĂ܂B
		XNvgł̂ݎgp\łB
		ȂAꕔĒl̑͂ł܂B

	
		ߕ̈lꍇAŗp邱Ƃł܂B
		Xy[X͗vȂ悤łՂłB
		rZqyј_Zq͒l^łƂl1AUłƂ0Ԃ܂B

	Cxg
		`ȂXNvgłB
		^CA^bNȂǂ̍쐬Ɏg܂B
		CxgLq镔ł́ACxg::xƂ邱Ƃł̃Cxg̎w肵x
		XNvgJn邱Ƃł܂B

	ߍ\
		͔pXy[X󂯂ċLqĂB

RDߕyъ֐yђ萔x
	{\
		C ̍\ɏĂ܂BȂ΁AC ̉ǂłB

		if - else if - else \
			if( <cond> ) <cmd_1> [ [else if(<cond_n>) <cmd_n> ]* else <cmd_z>]

			<conf>^̎ɂ́A<cmd1> sāAif\𔲂܂B
			 "else if(<cond_n>)" ΁A擪珇Ԃɕ]āA
			ꂪ^ł<cmd_n>sāAif\𔲂܂B
			ŌɁA"else" ΁Asif\𔲂܂B

			܂A<cmd_n>  { , } păubNɂ邱Ƃł܂B

			G
			// @input 0 ̏ꍇAxHOGEɔт܂B
			if(@input == 0) goto HOGE;

			// @input 0 ̏ꍇAxHOGEɔсAȊȌꍇFUGAɔт܂B
			if(@input == 0) goto HOGE; else goto FUGA; 

			if(@input == 0)
				mes "zero";
			else if(@input == 1)
				mes "one";
			else if(@input == 2) {
				mes "two";
			} else {
				mes "??unknown";
				mes "0,1,2 ̂ꂩ̒l͂ĂB";
			}

			if ̌elseƁAelse  else 
			Ōifƌт܂BႦ΁A

			if(@temp <= 1) if(@temp <= 0) mes "<= 0"; else mes "1"; else mes ">= 2";

			Ƃ\́A

			if(@temp <= 1) { if(@temp <= 0) mes "<= 0"; else mes "1"; } else mes ">= 2";

			Ɠ悤ɏ܂B

		for\
			for(<cmd_1>; <cond>; <cmd_2>) <cmd_3>

			<cmd_1>sA<cond> ^łԁA<cmd_3> sĂA
			<cmd_2>s܂B

			for(set @i,0;@i < 5;set @i,@i+1) mes @i;

			for(set @i,0;@i < 5;set @i,@i+1) {
				mes @i;
				next;
			}

		while\
			while( <cond> ) <cmd>

			<cond>^̊<cmd> s܂B

			set @temp,5;
			while(@temp > 0) {
				mes @temp;
				set @temp,@temp-1;
			}

		switch\
			switch(<val_1>) { [case <val_n>: ....] [ default: ...] }

			<val> Ɠl"case <val_n>"̏Ɉړ܂BvĺA
			default \ꍇ͂ɔсAꍇswitch \𔲂܂B

			܂Afall throughɂȂĂ̂ŁAswitch \͎Iɔ܂B
			switch \𔲂ɂ́Abreak; ߂p܂B

			switch(@temp) {
			default: mes("unknown FALLTHRU"); // "break" ̂Ŏsp
			case 0: mes(""); break;
			case 1: mes(""); break;
			case 2: mes(" FALLTHRU"); // "break" ̂Ŏsp
			case 3: mes("Q"); break;
			case 4: mes("l"); break;
			case 5: mes(""); break;
			}

		do - while \
			do <cmd> while(<val>);

			"<cmd> while(<val>) <cmd>;" Ǔ\ŁAŏ<cmd> s܂B
			̌A<val> ^̊<cmd> s܂B

		break 
			ԓɂ for , while , switch , do - while \𔲂܂B

		continue 
			ԓɂ for , while , do - while \̎̌JԂʒuɈړ܂B

	ߕ
		mes
			mes <string>;

			string		

			<string>ɋLqꂽbZ[WEBhEɏo͂܂B

		next
			next;

			bZ[WEBhEnext{^\Aҋ@܂B

		close
			close;

			bZ[WEBhEclose{^\AXNvgI܂B

		close2
			close2;

			bZ[WEBhEclose{^\Aҋ@܂B
			XNvgI邽߂ɂend߂ƕpĂB
			close{^ꂽ̏s邱Ƃo܂B

		menu
			menu <string1>,<label1>[,<stringN>,<labelN>...];

			stringN		
			labelN		x

			j[\܂B<stringN>ɋLqꂽI<labelN>XNvgJn܂B
			܂AI΂ꂽx̔ԍ͕ϐ@menuɑ܂B
			(l15ɂ܂A͍㓮삪ۏႳȂ̂l15͎gpȂŉj

		goto
			goto <label>;

			label		x

			<label>XNvgJn܂B

		cutin
			cutin <filename>,<position>;

			filename	
			position	l

			JvEȂǂ̃JbgC\܂B<filename>͕\t@CA<position>͕\ʒuw肵܂B
			positionF0,A1,A2,EA255,JbgC

		cutincard
			cutincard <item id>;

			item id		l

			ACeIDɑΉJ[h̉摜\܂B

		jobchange
			jobchange <job>[, <upper>];

			job		l
			upper		l

			EƂύX܂B<job>db/const.txtQƂĂB
			<upper>0=ʏ,1=],2={q,-1 or =݂<upper>ɂȂ܂B
			jobLv͎łPɂȂ܂B
			o[hƃ_T[ɂ͒ӂĂB

		changebase
			changebase <job>[, <id>];
			
			job		l
			char id	ڂύXΏۂIDłBȗ͎̌ڂύX܂B
			
			ڂύX܂B<job>db/const.txtQƂĂB
			job22ɂƂ͎IɑO܂B
			
		input
			input [<variable>];

			variable	ϐAȗ

			̓EBhEJA̓f[^<variable>ɑ܂B
			ϐ̌^^̂Ƃ͕̓EBhEA^̂Ƃ͐l̓EBhEɂȂ܂B
			<variable>ȗꍇɂ͐l̓EBhEoAf[^͕ϐl14 (̃G+14)ɑ܂B
			il14͍̓삪ۏႳȂ̂ŁA͏ȗȂŉj

		warp
			warp <gatname>,<x>,<y>;

			gatname		
			x,y		l

			<gatname>Ɏw肳ꂽMAP̍W<x>,<y>Ƀ[v܂B
			<gatname>SavePointɂꍇAZ[u|CgɈړ܂B
			RandomɂꍇAMAP̂ǂɈړ܂B<x><y>͖B

		setlook
			setlook <n1>,<n2>;

			n1,n2		l

			OύX܂B<n1>͕iA<n2>͎ނw肵܂B
			n1F1,^A2,A3,iA4,iA5,iA6,FA7,FA8,
			i͕ύX܂BATVjƃ[OjɊւĂ͕̐F܂B


		set
			set <variable>,<n>;

			variable	ϐ
			n		l/

			<variable><n>܂B
			^gpƂ͕ϐɃ|XgtBbNXYȂŉB

		setarray
			setarray <variable>[,<n0>[,<n1>c]];

			variable	ϐ
			nx		l/

			z<variable>ɒl<n0>,<n1>,c̃Xg܂B
			<variable>͔z񖼂w肷ƍŏAvfԍw肷Γrł܂B
			<> setarray @hoge[2],16,24,32;  @hoge̗vf24܂ł16,24,32ɂB

		cleararray
			cleararray <variable>,<n>,<count>;

			variable	ϐ
			n		l/
			count		l

			z<variable>ɒl<n><count>܂B
			<variable>͔z񖼂w肷ƍŏAvfԍw肷Γrł܂B
			<> cleararray @hoge[3],0,6;  @hoge̗vf38܂ł0ɃZbg

		copyarray
			copyarray <var1>,<var2>,<n>;

			<var1>,<var2>	ϐ
			n		

			z<var1>ɔz<var2>̗vf<n>Rs[܂B
			<var1>,<var2>͔z񖼂w肷ƍŏAvfԍw肷ΓrRs[ł܂B

		deletearray

			deletearray <variable>,<n>;

			variable	ϐ
			n		l

			z<variable><n>̗vf폜A̗vfOɋl߂
			<variable>͔z񖼂w肷ƍŏAvfԍw肷Γr폜ł܂B

		getitem
			getitem <itemid>,<num>[,<identify>,<account_id>];

			itemid		l܂͕
			num		l
			identify	l(ȗ)
			account_id	l(ȗ)

			<itemid>Ɏw肳ꂽACeIDACe<num>肵܂B
			<itemid>̏ꍇA̖O(name,jname)ACeIDgp܂B
			AACeitem_db.txtȂǂɈˑ邽߁AeXgړIȊOł͎gpׂł͂܂B
			<identify> Ӓ(0ŖӒA1ŊӒ)
			<account_id>ACenw(ȗƎ)

		getitem2
			getitem <itemid>,<num>,<identify>,<refine>,<attribute>,<card1>,
			<card2>,<card3>,<card4>[,<account_id>]

			itemid		l܂͕
			num,identify,refine,attribute,card1,card2,card3,card4	l
			account_id	l(ȗ)

			<itemid>Ɏw肳ꂽACeIDACe<num>肵܂B
			<identify> Ӓ(0ŖӒA1ŊӒ)
			<refine> Bl
			<attribute> ACȅ
			<card1> ĂJ[hAȂ255őȊÕACeŃL̖Oꂽ254
			<card2> ĂJ[hAȂ瑮Ɛ̂̐ݒB̂̐(͈:0~3)*5*256 + (:0A:3A:1A:4Ay:2)
			<card3> ĂJ[hAL̖OACe̓LID̉2oCg
			<card4> ĂJ[hAL̖OACe̓LID̏2oCg
			<account_id>ACenw(ȗƎ)

			<itemid>̏ꍇA̖O(name,jname)ACeIDgp܂B
			AACeitem_db.txtȂǂɈˑ邽߁AeXgړIȊOł͎gpׂł͂܂B

		delitem
			delitem <itemid>,<num>;

			itemid_num	l

			<itemid>Ɏw肳ꂽACeIDACe<num>܂B

		makepet
			makepet <petid>;

			petid	l

			<petid>Ɏw肳ꂽACeIDybg̗쐬܂B

		viewpoint
			viewpoint <type>,<x>,<y>,<id>,<color>;

			type,x,y,id	l
			color		s

			sȂ̂ŏڂ͂ł܂񂪁A~jMAPɓ_ł_\A폜܂B
			type:1,\A2,폜

		heal
			heal <hp>,<sp>;

			hp,sp		l

			<hp>HPA<sp>SP񕜂܂B

		itemheal
			itemheal <hp>,<sp>;

			hp,sp		l

			<hp>HPA<sp>SP񕜂܂BhealƂ͈Ⴂ񕜂HPSP̗ʂVIT(SP̏ꍇINT)ƃXLɂ␳t܂B

		end
			end;

			XNvg̎sI܂B

		setoption
			setoption <string>;

			string		

			pF
			PCɈȉŎti(?)t܂B
			0x0000	- ti폜
			0x0001	- ?
			0x0002	- nCh(et)
			0x0004	- ??
			0x0008	- J[g
			0x0010	- 
			0x0020	- yRyR(iCg,NZC_[̎̂ݗL)
			0x0040	- nCh(e)
			0x0080	- J[g2
			0x0100	- J[g3
			0x0200	- J[g4
			0x0400	- J[g5
			0x0800	- I[N(SagẽXLAo[XI[LbVԂɂȂ)

			[ׂďĂt̂ŁAw肵ꍇɂ͍vw肵ĂB

		savepoint
			savepoint <gatname>,<x>,<y>;

			gatname		
			x,y		l

			<gatname>̍W<x>,<y>Z[u|Cgɐݒ肵܂B

		openstorage
			openstorage;

			qɂJ܂B

		setcart
			setcart;

			J[gt܂B

		successrefitem
			successrefitem <n>;

			n		l

			BGtFNg\܂B
			n:1,A2,ZA3,A4,EA5,́A6,CA7,ANZPA8,ANZQA9,iA10,i

		failedrefitem
			failedrefitem <n>;

			n		l

			BsGtFNg\܂B
			n:1,A2,ZA3,A4,EA5,́A6,CA7,ANZPA8,ANZQA9,iA10,i

		repairitem
			repairitem;
			
			LĂC\(j󂳂ꂽ)ACeׂďC܂B
			
		setfalcon
			setfalcon;

			t܂B

		setriding
			setriding;

			yRyRɏ܂B

		monster
			monster <gatname>,<x>,<y>,<mobname>,<mobid>,<num>[,<event>];

			gatname,mobname	
			x,y,mobid,num	l
			event		Aȗ

			<gatname>̍W<x>,<y><mobname><mobid>Ɏw肳ꂽIDX^[<num>̏o܂B
			<gatname>this̏ꍇXNvgsvC[MAPA
			<x><y>-1̏ꍇAXNvgsvC[̍WA
			<mobname>--en--̏ꍇpꖼA--ja--̏ꍇ{ꖼA<mobid>-1̏ꍇ_B
			̃X^[|Ƃ<event>Jn܂B

		announce
			announce <string>,<flag>;

			string		
			flag		l

			<string>flAiEXŕ\܂B
			<flag>͈ȉɎʂłB
			GAtO
			0x00 ׂĂ̂l`oɑM
			0x01 l`o
			0x02 ʓ
			0x03 ̂
			0x04 l`oI
			FtO
			0x00 F
			0x10 F
			tO
			0x00 ɖ
			0x08 Cxgp

			GAtOƐFtOƓtO̍vw肵ĂB

		killmonster
			killmonster <gatname>[,<event>];

			gatname		
			event		Aȗ

			<gatname>ɑ݂郂X^[ׂĎE܂B
			<event>ɂČĂяoꂽX^[̂ݎEƂ\łB<event>AllɂƂ̃}bvɂꎞIɏꂽX^[SĎE܂B

		killmonsterall
			killmonsterall <gatname>

			gatname		

			<gatname>ɑ݂郂X^[ׂĎE܂BkillmonsterƂ͈Ẵ}bvɎn߂zuĂX^[܂őSĎEƂł܂B


		addtimer
			addtimer <ms>,<event>;

			ms		l
			event		

			݂̃vC[ɁA<ms>~bo߂<event>Jn^C}[쐬܂B
			̃^C}[ɂĎsCxǵÃvC[̏ɃANZXł܂B
			vC[OAEgƃ^C}[͖ɂȂ邽ߒӂĂB
			A[i}bvȂǂŎgpꍇ͂ł͂ȂNPC^C}[gpĂB

		deltimer
			deltimer <event>;

			event		

			݂̃vC[<event>Jn^C}[܂B

		addtimercount
			addtimercount <event>,<ms>;

			event		
			ms		l

			݂̃vC[<event>Jn^C}[̊Jn܂ł̎Ԃ<ms>~bǉ܂B

		initnpctimer
			initnpctimer [<name>];

			<name>Ŏw肳ꂽNPCNPC^C}[̒lOɂAJEgJn܂B
			nameȗƁA߂sNPCΏۂɂȂ܂B

			NPC^C}[̓~bPʂOnTimerXXXXƂxCxgs܂B
			<> OnTimer1000: <= 1b, OnTimer30000: <= 30b

		stopnpctimer
			stopnpctimer [<name>];

			<name>Ŏw肳ꂽNPCNPC^C}[̃JEg~܂B
			nameȗƁA߂sNPCΏۂɂȂ܂B

		startnpctimer
			stopnpctimer [<name>];

			<name>Ŏw肳ꂽNPCNPC^C}[̃JEgĊJ܂B
			nameȗƁA߂sNPCΏۂɂȂ܂B
			initnpctimerƈႢAJEg0ɃZbg܂B
			stopnpctimerƃZbgŎgp܂B

		setnpctimer
			setnpctimer <tick>[,<name>]

			<name>Ŏw肳ꂽNPCNPC^C}[̃JEgύX܂B
			nameȗƁA߂sNPCΏۂɂȂ܂B
			getnpctimer𗘗p΁AJEg𑝌ł܂B

		disablenpc
			disablenpc <npcname>;

			npcname		

			<npcname>𖳌ɂ܂B

		enablenpc
			enablenpc <npcname>;

			npcname		

			<npcname>Lɂ܂B
			<npcname>ɔ͈͂w肳Ăꍇ́Aɔ͈͓PCɑ΂OnTouchCxgs܂B

		hideonnpc
			hideonnpc <npcname>;
			
			npcname		
			
			<npcname>nCfBOԂɂ܂B
			<npcname>𖳌ɂ܂B

		hideoffnpc
			hideoffnpc <npcname>;
			
			npcname		
			
			nCfBOԂ<npcname>\܂B
			<npcname>LɂAɔ͈͂w肳Ăꍇ́Aɔ͈͓PCɑ΂OnTouchCxgs܂B
			

		mapannounce
			mapannounce <gatname>,<string>,<flag>;

			gatname,string	
			flag		l

			<gatname>Ŝ<string>flAiEXŕ\܂B
			flag:0,FA16,

		areaannounce
			areannounce <gatname>,<x0>,<y0>,<x1>,<y1>,<string>,<flag>;

			gatname,string		
			x0,y0,x1,y1,flag	l

			<gatname><x0>,<y0><x1>,<y1>͈͓̔ɑ΂<string>flAiEXŕ\܂B
			flag:0,FA16,

		areawarp
			areawarp <gatname>,<x0>,<y0>,<x1>,<y1>,<gatname2>,<x>,<y>;

			gatname,gatname2	
			x0,y0,x1,y1,x,y		l

			<gatname><x0>,<y0><x1>,<y1>͈͓̔ɂPC<gatname2>̍W<x>,<y>Ɉړ܂B

		areamonster
			areamonster <gatname>,<x0>,<y0>,<x1>,<y1>,<mobname>,<mobid>,<num>[,<event>];

			gatname,mobname		
			x0,y0,x1,y1,mobid,num	l
			event			Aȗ

			<gatname><x0>,<y0><x1>,<y1>͈͓̔<mobname><mobid>Ɏw肳ꂽIDX^[<num>̏o܂B
			<gatname>this̏ꍇXNvgsMAPA<x><y>-1̏ꍇ_WA
			<mobname>--en--̏ꍇpꖼA--ja--̏ꍇ{ꖼA<mobid>-1̏ꍇ_B
			̃X^[|Ƃ<event>Jn܂B

		percentheal
			percentheal <hp>,<sp>;

			hp,sp		l

			HPSP<hp>%A<sp>%񕜂܂B

		resetstatus
			resetstatus;

			Xe[^X|CgZbg܂B

		resetskill
			resetskill;

			XL|CgZbg܂B

		statusup
			statusup <st>;

			st	l

			<st>Ŏw肳ꂽ{Xe[^XlAXe[^X|Cg1グB
			<st> bStr, bVit, bInt, bAgi, bDex, bLuk Ŏw肷B

		statusup2
			statusup2 <st>,<n>;

			st,n	l

			<st>Ŏw肳ꂽ{Xe[^XlAXe[^X|Cg<n>グB
			<st> bStr, bVit, bInt, bAgi, bDex, bLuk Ŏw肷B

		skill
			skill <skillid>,<skilllv>,<flag>;

			skillid,skilllv,flag	l

			<skillid>Ɏw肳ꂽIDLV<skilllv>XLK܂B
			flag:0,PvIȃXL擾(XLc[ɂȂ͖)A1,ꎞI(͈͕͂s)Ȏ擾A
			<skilllv>0ɂƂł̃XLYꂳ邱Ƃ\łB

		guildskill
			guildskill <skillid>,<skilllv>,<flag>;

			skillid,skilllv,flag	l

			<skillid>Ɏw肳ꂽIDLV<skilllv>XLK܂B
			flag:0,MhXL|Cg܂A1,MhXL|Cg܂
			<skilllv>0ɂƂł̃XLYꂳ邱Ƃ\łB
			
		waitingroom
			waitingroom <title>,<limit>[,<event>[,<trigger>]];

			title		
			limit		l
			event		Aȗ
			trigger		lAȗ

			<title>^CgƂă`bg[\܂B
			<trigger>𖞂ƂA<event>𓮍삳邱Ƃ\łB
			<trigger>ȗ<limit>̐lgp܂B

		delwaitingroom
			delewaitingroom [<name>]

			name	Aȗ

			w肵NPC̃`bg[܂B
			<name>ȗƁA߂sNPCΏۂɂȂ܂B

		disablewaitingroomevent
			disablewaitingroomevent [<name>]

			name	Aȗ

			<name>Ŏw肵NPC̃`bg[̃Cxg𖳌ɂ܂B
			<name>ȗƁA߂sNPCΏۂɂȂ܂B

		enablewaitingroomevent
			enablewaitingroomevent [<name>]

			name	Aȗ

			<name>Ŏw肵NPC̃`bg[̃CxgLɂ܂B
			<name>ȗƁA߂sNPCΏۂɂȂ܂B
			܂AɃCxgNlɒBĂꍇA
			ɃCxgs܂B

		warpwaitingpc
			warpwaitingpc <gatname>,<x>,<y>[,<num>];

			gatname		
			x,y,num		l

			߂sNPC̃`bg[ɓĂPĈA
			<num>Ŏw肵lA<gatname>̍W<x>,<y>Ɉړ܂B
			<num>ȗ waitingroom<trigger>Ŏw肵lgp܂B

			[vl $@warpwaitingpcnum ɁA[vl̃AJEgID
			z $@warpwaitingpc ɃZbg܂(擪l)B


		emotion
			emotion <n>;

			n		l

			<n>G[Vo܂B

		classchange
			classchange <class>, <type>;

			class	l
			type	l

			<class>Ŏw肵ClassɃNX`FW܂B

		misceffect
			misceffect <type>;

			type	l

		soundeffect
			soundeffect <name>, <type>;

			name	(24܂)
			type	l

			<name>Ŏw肵GtFNg𔭐܂B
			<type>
				0	1炷
				1	JԂ炷
				2	JԂ̒~

		setmapflag
			setmapflag <gatname>,<flag>;

			gatname		
			flag		l

			<gatname>mapflagǉ܂B
			<flag>db/const.txtQƂĂB

		removemapflag
			removemapflag <gatname>,<flag>;

			gatname		
			flag		l

			<gatname>mapflag܂B
			<flag>db/const.txtQƂĂB

		pvpon
			pvpon <gatname>;

			gatname		

			<gatname>PVP\MAPɂ܂B

		pvpoff
			pvpoff <gatname>;

			gatname		

			<gatname>PVPsMAPɂ܂B

		gvgon
			gvgon <gatname>;

			gatname		

			<gatname>V[Y[hɂ܂B

		gvgoff
			gvgoff <gatname>;

			gatname		

			<gatname>V[Y[hɂ܂B

		setmapflagnosave
			setmapflagnosave <gatname>,<savegatname>,<x>,<y>;

			gatname,nosavegat	
			x,y			l

			<gatname>mapflagnosaveAƂ<savegatname>,<x>,<y>ݒ肵܂B

		detachrid
			detachrid;

			NPCɃA^b`ĂIDNA܂B
			ȌALN^[KvƂ閽߂słȂȂ܂B

		doevent
			doevent <name>;

			name	

			vC[̂̃CxgN܂B<name>ɂ̓Cxgw肵܂B
			vC[NPCƉbȂǂŎsłȂꍇAL[ɓAs\ɂȂ܂ő҂Ďs܂B
			L[̃TCY͂ƂĂ̂ŁAAŋNƃCxg邩܂B
			xtCxgwł܂ANPCȗłȂ̂ŒӂĂB

		donpcevent
			donpcevent <name>;

			name	

			vC[A^b`ĂȂ(NPĈ)CxgN܂B
			<name>ɂ̓Cxgw肵܂BCxg͑Ɏs܂B
			xtCxgwłANPCȗ邱ƂŁACxgu[hLXgł܂B
			iNPC̓ÕxsłB ၄"::OnEvent"j

		callsub
			callsub <label>[,<arg0>[,<arg1> c]]

			label		x
			arg0,arg1c	ϐAAlȂǁAȗ

			XNvg̃x<label>Tu[eBƂĎs܂B
			arg0,arg1c͈ŁATu[eBɂgetarg֐ŏł܂B
			Tu[eB畜AƂreturn߂gpĂB
			̖߂return߂̎s󋵂ɂĂ͊֐ƂĎgp邱Ƃo܂B

			͕ϐɂĂ͎QƓnAl╶ɂĂ͒lnɂȂ܂B
			i܂AϐnꍇA set getarg(0), 1; ƎgƂo܂Bj

		callfunc
			callfunc <func>[,<arg0>[,<arg1> c]]

			func		
			arg0,arg1c	ϐAAlȂǁAȗ

			<func>Œ`ꂽ[U[`֐s܂B
			arg0,arg1c͈ŁA[U[`֐ɂgetarg֐ŏł܂B
			[U[`֐畜AƂreturn߂gpĂB
			̖߂return߂̎s󋵂ɂĂ͊֐ƂĎgp邱Ƃo܂B

			͕ϐɂĂ͎QƓnAl╶ɂĂ͒lnɂȂ܂B
			i܂AϐnꍇA set getarg(0), 1; ƎgƂo܂Bj

		return
			return <retval>

			retval	ϐAAlȂǁAȗ

			ɃTu[eB̓[U[`֐𔲂AĂяoɖ߂܂B
			<retval>͖߂lŁAcallsub܂callfunc֐ƂČĂяoĂƂA̖߂lgp܂B
			callsub܂func߂ƂČĂ΂ĂƂ́A<retval>͏ȗĂB
			߂l͕ϐɂĂ͎QƕԂAl╶ɂĂ͒lԂɂȂ܂B
			i܂AϐԂꍇA set callfunc("func"), 1; ƎgƂo܂Bj

		recovery
			recovery

			ڑґSAh{HPESPS񕜂܂B

		gmcommand
			gmcommand <command>

			command		

			@R}hƁAGMx99̃Lŝ
			܂B

	֐
		rand֐
			rand(<n1>[,<n2>])

			n1		l
			n2		lAȗ

			<n1>̂ݎw肳ĂꍇA0<n1>-1܂ł̐l_ɑIŕԂ܂B
			<n2>w肵ꍇA<n1><n2>܂ł̐`_ɑIŕԂ܂B

		getitemname֐
			getitemname(<itemid>)

			itemid		l

			<itemid>Ɏw肳ꂽIDACejname𕶎ŕԂ܂B
			ȂAACeitem_db.txtQƂ܂

		countitem֐
			countitem(<itemid>)

			itemid		l܂͕

			<itemid>Ɏw肳ꂽIDACȅԂ܂B
			<itemid>̏ꍇA̖O(name,jname)ACeIDgp܂B
			AACeitem_db.txtȂǂɈˑ邽߁AeXgړIȊOł͎gpׂł͂܂B

		checkweight֐
			checkweight(<itemid>,<num>)

			itemid		l܂͕
			num		l

			<itemid>Ɏw肳ꂽIDACe<num>Ƃł̂Ȃ1A
			łȂ0Ԃ܂B
			<itemid>̏ꍇA̖O(name,jname)ACeIDgp܂B
			AACeitem_db.txtȂǂɈˑ邽߁AeXgړIȊOł͎gpׂł͂܂B

		strcharinfo֐
			strcharinfo(<n>)

			n		l

			LԂ܂B
			n:0,LA1,p[eB[A2,Mh

		getequipname֐
			strcharinfo(<n>)

			n		l

			iԂ܂B
			n:1,A2,ZA3,A4,EA5,́A6,CA7,ANZPA8,ANZQA9,iA10,i

		getequipisequiped֐
			getequipisequiped(<n>)

			n		l

			Ă1AĂȂ0Ԃ܂B
			n:1,A2,ZA3,A4,EA5,́A6,CA7,ANZPA8,ANZQA9,iA10,i

		getequipisenableref֐
			getequipisenableref(<n>)

			n		l

			Błꍇ1AłȂꍇ0Ԃ܂B
			n:1,A2,ZA3,A4,EA5,́A6,CA7,ANZPA8,ANZQA9,iA10,i

		getequipisidentify֐
			getequipisidentify(<n>)

			n		l

			Ӓς݂̏ꍇ1AӒ̏ꍇ0Ԃ܂B
			n:1,A2,ZA3,A4,EA5,́A6,CA7,ANZPA8,ANZQA9,iA10,i

		getequiprefinerycnt֐
			getequiprefinerycnt(<n>)

			n		l

			B̓xԂ܂B
			n:1,A2,ZA3,A4,EA5,́A6,CA7,ANZPA8,ANZQA9,iA10,i

		getequipweaponlv֐
			getequipweaponlv(<n>)

			n		l

			LVԂ܂Bh̏ꍇɂ0AƂ͕LVɑΉ܂B
			n:1,A2,ZA3,A4,EA5,́A6,CA7,ANZPA8,ANZQA9,iA10,i

		getequippercentrefinery֐
			getequippercentrefinery(<n>)

			n		l

			BԂ܂B
			n:1,A2,ZA3,A4,EA5,́A6,CA7,ANZPA8,ANZQA9,iA10,i

		getrepairableitemcount֐
			getrepairableitemcount(<n>)

			n		l(_~[Ȃ̂łȂł悢)
			
			LACeŏC\(j󂳂ꂽ)ACe̐Ԃ܂B
			
		getusers֐
			getusers(<n>)

			n		l

			lԂ܂B
			n:0,PĈMAP̑lA1,SMAP̑liOCljA8,NPC݂̑MAP̑l

		getmapusers֐
			getmapusers(<gatname>)

			gatname		

			<gatname>ɑ݂鑍lԂ܂B

		getareausers֐
			getareausers(<gatname>,<x0>,<y0>,<x1>,<y1>)

			gatname		
			x0,y0,x1,y1	l

			<gatname><x0>,<y0><x1>,<y1>͈͓̔ɂlԂ܂B

		getskilllv֐
			getskilllv(<skillid>)

			skillid		l

			<skillid>Ŏw肵IDXLLVԂ܂BKĂȂꍇ0Ԃ܂B

		getgdskilllv
			getgdskilllv(<guild_id>,<skillid>)
			
			guild_id,skillid	l
			
			<skillid>Ŏw肵IDXLLVԂ܂BKĂȂꍇ0Ԃ܂B

		readparam֐
			readparam(<param>[,<charname>])
			
			param		p[^(const.txtQƁAłLq͐)
			charname	LN^(ȗ)
			
			<param>Ŏw肳ꂽLN^̃p[^Ԃ܂
			<charname>w肳Ăꍇ͑ΏۃLN^̃p[^Ԃ܂

		getcharid֐
			getcharid(<n>[,<charname>])

			n		l
			charname	LN^(ȗ)

			LIDŕԂ܂(charnamew肳ĂȂꍇ͎)B
			n=0	LID
			n=1	p[eB[
			n=2	Mh
			n=3	AJEgID

		getpartymember֐
			getpartymember(<n>)
			
			n		l
			
			<n>Ŏw肵IDp[eB[̐l $@partymembercount ɕԂ܂B
			z $@partymembername$ Ƀp[eBo[̖OZbg܂B

		getpartyname֐
			getpartyname(<n>)

			n		l

			<n>Ŏw肵IDp[eB[Ԃ܂B

		getguildname֐
			getguildname(<n>)

			n		l

			<n>Ŏw肵IDMhԂ܂B

		getguildmaster֐
			getguildname(<n>)

			n		l

			<n>Ŏw肵IDMh̃}X^[̖OԂ܂B

		getguildmasterid֐
			getguildmasterid(<n>)

			n		l

			<n>Ŏw肵IDMh̃}X^[̃LN^[IDԂ܂B

		basicskillcheck֐
			basicskillcheck(0);

			battle_athena.confbasic_skill_check̐ݒlԂ܂B0͈Ӗ͂܂񂪉ȂꍇG[ɂȂ܂B
			basic_skill_checkƃJv̑qɗp킹ׂɍłȊŐ@\͂܂B߂l0Ȃbasic_skill_checknoA1ȂyesłB

		getgmlevel֐
			getgmlevel(0);

			vC[GMxԂ܂B

		guildopenstorage֐
			guildopenstorage(0);

			MhqɂJ܂B
			Ԃl2ȂMhɏĂȂLƌӖ
			1Ȃ瑼̃Mho[qɂgp̈ӖłB
			0Ȃ琬IɃMhqɂJƂ̂ƂłB

		getwaitingroomstate֐
			getwaitingroomstate(<num>,[<name>])

			num	l
			name	Aȗ

			<name>Ŏw肵NPC̃`bg[̏ԂԂ܂B
			<name>ȗƁA߂sNPCΏۂɂȂ܂B
			<num>œw肵܂B

			num=0	݃`bg[ɓĂlilj
			num=1	`bg[̌Elilj
			num=2	`bg[̃CxgNlilj
			num=3	`bg[̃CxgLǂilj
			num=4	`bg[̃^Cgij
			num=5	`bg[̃pX[hij
			num=16	`bg[̃Cxgij
			num=32	`bg[ǂilj
			num=33	`bg[ŃCxgNlǂilj

		getinventorylist֐
			getinventorylist()

			݃A^b`ĂvC[̑i܂ރACef[^
			zϐ@inventorylist_***Ƀ[h܂B
			ȉϐ̐
			@inventorylist_id : ACeID
			@inventorylist_amount : ACe̗
			@inventorylist_equip : Ăꍇ̑ӏ
			@inventorylist_refine : ACe̐Bl
			@inventorylist_identify : ACe̊Ӓ
			@inventorylist_attribute : ACe̔j̗L
			@inventorylist_card1 : ACeɑ}ĂJ[hf[^(1)
			@inventorylist_card2 : ACeɑ}ĂJ[hf[^(2)
			@inventorylist_card3 : ACeɑ}ĂJ[hf[^(3)
			@inventorylist_card4 : ACeɑ}ĂJ[hf[^(4)
			@inventorylist_count : vC[̏Ă鑍ACeސ

		getskilllist֐
			getskilllist()

			݃A^b`ĂvC[̃XLf[^
			zϐ@skilllist_***Ƀ[h܂B
			ȉϐ̐
			@skilllist_id : XLID
			@skilllist_lv : XL̍ő僌x
			@skilllist_flag : XL̎ʃtO
			@skilllist_count : vC[̊oĂXL̍ő吔

		getnpctimer֐
			getnpctimer(<num>[,<name>])

			num	l

			<name>Ŏw肳ꂽNPCNPC^C}[̏𓾂܂B
			nameȗƁA߂sNPCΏۂɂȂ܂B
			<num>œw肵܂B

			num=0	݂NPC^C}[̃JEgl
			num=1	NPC^C}[삵Ă邩ǂ
			num=2	wNPC̃^C}[Cxgx̑

		attachrid֐
			attachrid(<num>)

			num	l

			<num>Ŏw肳ꂽID̃LN^[sXNvgɃA^b`܂B
			ȌALN^[Ɋւ閽߂֐/ϐȂǂ͑SĐVLN^[ΏۂɂȂ܂B
			̓XNvgI/f(close,end,menu,next,inputȂǂ̎s)܂ŗLłB
			ɃCxgŋNꂽXNvgŃ}bvϐgĕʃLN^[
			A^b`̂Ɏgp܂Bgetcharid(3)ŏAJEgIDgĂB
			ȂAf^b`ɂdetachrid߂g܂B

			ӂׂ_ƂẮA̖߂PCA^b`ꍇAmes,menu,nextȂǂ
			EBhE({^)o閽߂sĂ͂܂B
			肪NPCƉb̏ꍇA̖߂͐삵܂B
			񏊓߂Ȃǂōς܂ׂłB

			̊֐̓A^b`ɐǂԂ܂B
			U(0)Ԃėꍇ́AYLN^[݂Ă܂B

		isloggedin֐
			isloggedin(<num>)

			num	l

			<num>Ŏw肳ꂽID̃LN^[̃}bvT[o[
			OCĂ邩ǂׂ܂B

		getarraysize֐
			getarraysize(<variable>)

			variable	ϐ

			z<variable>̗LȃTCY𒲂ׂ܂B
			ł̃TCY͗vf0iϐł"")łȂA
			ő̗vfԍ+1 ɂȂ܂B
			z񖼂ł͂ȂvfԍtŎw肷ƁA
			ȂƂ̗vf܂ł͑SėLłƉ肵܂B
			<> z@hoge 1,2,3,4,5 ƂƁA
			     getarraysize(@hoge)=5, getarraysize(@hoge[10])=10;

		callsub֐
			callsub(<label>[,<arg0>[,<arg1>c]])

			callsub߂֐ƂĎs܂Bڂcallsub߂ĂB

		callfunc֐
			callfunc(<func>[,<arg0>[,<arg1>c]])

			callfunc߂֐ƂĎs܂Bڂcallfunc߂ĂB

		getarg֐
			getarg(<num>)

			num	l

			[U[`֐܂̓Tu[eBŁAĂяo܂B
			l0łB
			<> callsub L_SUB01,"hoge",500,999; ƌĂ΂ꂽꍇA
			     getarg(0)="hoge", getarg(1)=500, getarg(2)=999 ɂȂ܂B

		getusersname֐
			getusersname

			ڑ҂̖OAputstrŗ񋓂܂B@whoƎ֐łB

		dispbottom֐
			dispbottom(<message>)

			message		

			NPCɘb{lɂ̂݃Rgɕ\܂B

		getpetinfo֐
			getpetinfo(<num>)

			num	

			numɑΉzĘAĂybg̏擾܂B
			0:pet_id 1:pet_class 2:pet_name 3:friendly 4:hungry
			AĂȂ́Ȁꍇ0Ԃ܂B

		checkequipedcard֐
			checkequipedcard(<num>)

			num	

			numŎw肵idJ[h}iA
			A܂͏iɂ邩ǂT܂B
			ꍇ1BȂꍇ0Ԃ܂B

		select֐
			select(<string1>[,<string2>,<string3>...])

			stringN	

			j[\A1n܂郆[U[IԍԂ܂(menu ߂̊֐)B
			܂AI΂ꂽx̔ԍ͕ϐ@menuɑ܂B
			(l15ɂ܂A͍㓮삪ۏႳȂ̂l15͎gpȂŉj

	萔x
		-x
			ifmenuŎgp܂B̍sXNvgJn܂B

		OnInitx
			MAP[hꂽƂXNvgJn܂B

		OnInterIfInitx
			MAPT[o[InterT[o[ɐڑƂɎs܂B

		OnCharIfInitx
			MAPT[o[CharT[o[ɐڑƂɎs܂B

		OnMinuteXXx
			XXɎs܂Bl͏\iQłB

		OnClockXXXXx
			XXXXɎs܂Bl͏\iSłB

		OnHourXXx
			XX00Ɏs܂Bl͏\iQłB

		OnDayXXx
			XX0000Ɏs܂Bl͏\iQłB

		OnTimerXx
			NPC^C}[̃JEgXɂȂƂɎs܂B
			X̓~bPʂłB͊֌W܂B

		OnAgitInitx
			Mhf[^Ɛ苒Mh񂪃}bvT[o[
			ꂽƂɎs܂B
			Mh֌WNPC̏Ɏgp܂B

		OnAgitStartx
			MhU킪n܂ƂɎs܂B

		OnAgitEndx
			MhU킪IƂɎs܂B

		OnAgitBreakx
			GyEj󂵂ƂɎs܂B
			̃x͔j󂵂vC[̂ɂĎs܂B

		OnAgitEliminatex
			GyEjAMh̏L҂Ƃ
			Ă΂܂B

		OnGuildBreakx
			MĥƂɎs܂B

		OnTouchx
			͈NPC̗L͈͂PCꍇɎs܂B
			OnTouchݒ肷NPC̖O̓T[o[Ńj[NȕɂȂ΂Ȃ܂B

	ӎ
		ƐĂ""ň͂ĂB

SDG[bZ[W

	RpCG[imapT[o[N̂Ƃłj
		G[̍sԍꏊ\܂B

		unexpected expr end
			\Ȃ̏Ił
			̍ŏ','';'܂B

		unmatch ')'
			')'܂
			'(' ')'̑ΉłB

		unexpected newline @ string
			ɗ\Ȃsł
			('"'ň͂܂)̓rɉs܂B
			炭'"'̕YłB

		unexpected eof @ string
			ɗ\Ȃt@CI[ł
			̓rŃt@CI܂B
			炭'"'̕YłB

		unexpected charactor
		unexpected char
			\Ȃł
			ϐȂǂKɑĂȂƎv܂B

		l14 and l15 is DEPRECATED. use @menu instead of l15.
			l14l15͐܂Bl15̑@menugĂ

		prefix 'l' is DEPRECATED. use prefix '@' instead.
			vtBbNX'l'͐܂B'@'gĂB

		unmatch ']'
			']'܂B
			']'̑ΉłB

		expect function
			֐҂Ă܂
			֐ĂяoZq'('̑OɊ֐ȊÕV{܂B
			炭֐ԈႦĂ܂B

		expect ',' or ')' at func params
			֐̈ɂ','')'҂Ă܂
			炭؂','')'YĂ܂B

		func request '(' ')'
			֐Ăяo̊ʑΉ
			炭̐128𒴂܂B

		illeagal number of parameters
			p[^̐sł
			֐/߃p[^̌قȂ܂B
			̌mFĂB
			G[ʒu͑SĂ̈̌ɂȂ܂B

		expect command
			߂҂Ă܂
			߈ȊÕV{ˑRoĂ܂B
			炭ߖԈႦĂ܂B

		expect ',' or ';' at cmd params
			߂̈ɂ','';'҂Ă܂
			炭؂','';'YĂ܂B

		need ';'
			';'Kvł
			炭̐128𒴂܂B

	s̃G[
		fatal error ! player not attached!
			vIG[IvC[A^b`Ă܂I

			LN^[łȂCxgŎsĂ
			XNvg̒ŃLN^[񂪕KvȖ߂֐A
			ϐփANZX܂Battachrid֐gA
			LN^[񂪕svȖ߂gpĂB
			́Aattachrid֐Őݒ肳ꂽ񂪕słB
			ȂÃG[NƒɃRAfƎv܂B

			NPC̃CxgannounceƂɃtO0x08w肵ĂȂ
			ꍇ̃G[ł܂B


		illeagal scope string variable.
			ϐ̃XR[vsłB
			Ή̃vtBbNXŕϐgp܂B
			vtBbNXmFĂB

		illeagal scope
			XR[vsłBzϐΉ̃vtBbNX
			ϐɔzϐn̖߂sꍇȂǁB

		not label !
			goto/menu߂Ńxw肳ׂƂ
			xȊÕV{w肳Ă܂B
			́AxƕϐobeBOĂ܂B

		buildin_set: not name
			set߂őϐł͂܂B

		getelementofarray (operator[]): param2 illeagal number
			zϐ[]̒lsł
			[]̒l0128ȏɂȂ܂

		getelementofarray (operator[]): param1 not name
			zϐ[]̑ÕV{ϐł͂܂B

		op_2: int&str, str&int not allow.
			֌WZqirZqjŁAlƕA
			Ɛlw肳܂B

		infinity loop !
			XNvg̎sߐAgoto/menuߎs񐔂
			̂ŁA[vƔf܂B
			XNvg̎s͋Iɒf܂B

		not function and command !
			֐s/ߎsŁA֐ł߂łȂ
			V{܂B
			if̂Ȃł\łB

		return without callfunc or callsub !
			callfunccallsubĂȂ̂return߂s܂B

		stack.sp(?) != default(?)
			X^bN|C^X^bN|C^ƈقȂĂ܂B
			߂sʁAX^bN|C^܂B
			֐𖽗߂ƂĎs\܂B


TDƂ
	͂̕쐬ɂAsnapshotɊ܂܂NPCQlɂ܂B
	NPC쐬XɊӂ܂B

text by asong(2004/3/1) x[XɏC
