改造のソース等

合計:1 動作テストは行っていますが、暗転が発生した場合には報告下さい。

+ 武器を使うと効果発動
  • 武器を使うと効果発動 Q&A

武器を使うと効果を発動する機能をつけるには下記のように設定して下さい。
まず、bata,cgiを開いて、下にさがっていき武器リストがある所でストップして下さい。
今回はひのきの棒を例に使います。
#=================================================
# 武器 ◎追加/変更/削除/並び替え自由
# $m{***}で自分のステータスの値を使うことが可能
#=================================================
@weas = (
#	[0]No,	[1]名前,			[2]価格,	[3]攻撃力,				[4]重さ,	
 	[0,		'なし',				0,			0,						0,  ],
	[1,		'ひのきの棒',		10,			2,						int(rand(2)),		],
このようなものがありますね。実際にはひのきの棒の下にも武器が続いていってますね。
それでは、ひのきの棒の設定をこう弄ってやって下さい。今回は魔軽減を使いますね。1、2、3!
	[1,		'ひのきの棒',		10,			2,						int(rand(2)),		1,			sub{ my($y) = &_check_party(shift, '魔軽減', '武器'); return if !$y || $ms{$y}{hp} <= 0; $ms{$y}{tmp} = '魔軽減'; $com.=qq|<span class="tmp">$yは魔法の光で守られた!</span>|;	}		],
自分たちが効果をつける改造を少しでもわかりやすくするために、
#	[0]No,	[1]名前,			[2]価格,	[3]攻撃力,				[4]重さ,	
を下のように変えるといいかもしれませんよ。変えなくても動作に異常はありませんから、追加するのは御自由です。
#	[0]No,	[1]名前,			[2]価格,	[3]攻撃力,				[4]重さ,	[5]使用場所, [6]効果

次は使えるようにするために、コマンドの設定です。libフォルダをひらき、_skill.cgiをひらくと下記のようなものがあると思います。
	push @skills, ([0, 0, 'どうぐ',   sub{ &dougu }])  if $ites[$m{ite}][3] eq '1'; # 戦闘使用可アイテム持っている場合
この下にこのコマンドを追加して下さい。
push @skills, ([0, 0, 'ぶき',   sub{ &buki }])  if $ weas[$m{wea}][1] eq '1'; # 戦闘使用可アイテム持っている場合
そして、また少ししたに、
#======================
# @どうぐ
#======================
sub dougu {
	my $y = shift || $m;
	$com .= "$ites[$m{ite}][1] をつかった!";
	&{ $ites[$m{ite}][4] }($y);
	return if $mes;
	$m{ite} = 0;
}
このようなものがあると思います。その下に下記のものを追加してください。
#=================================================
# @ぶき by 神月
#=================================================
sub buki {
 	my $y = shift || $m;
	$com .= "$weas[$m{wea}][1] をつかった!";
	&{ $weas[$m{wea}][4] }($y);
	return if $mes;
	$m{wea} = 0;
}
これで完成です。案外簡単でしたね。これを応用すれば防具でも可能になりそうですね。
お疲れ様でした。
最終更新:2011年06月05日 13:40