忍者ブログ

しいたけサイクロン

主にRPGツクールVXAceを扱うブログです。 ここに公開してあるスクリプトは全部自由に使用してもらってかまいません。 改造なり何なりして好きに使ってください。

ランプ-スクリプト

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

コメント

ただいまコメントを受けつけておりません。

ランプ-スクリプト

(2018/04/14)バグ修正



以前からテストゲームなどで使用してきた、結構前に書いたスクリプトです。
最初に断っておきますと、たぶん似たようなスクリプトは色々なところで存在していると思います。そしておそらくよく見るランプスクリプトは私のものではありません。
ですので、もしそのスクリプトを探してこられた方はここにあるものとは違う可能性があるので注意してください。

ここのランプスクリプトは
暗闇マップをセット、
ランプイベントの発生させることができ、
時間経過とともにランプの照らす範囲が減少します。

テストゲーム (1.9MB)


・スクリプト
DataManager

Cache

Game_CharacterBase
Scene_Map
Sprite_DarkLampAround
Sprite_DarkLamp
Spriteset_Map

上のDataManagerとCache以外をまとめたもの。
composed_scripts_lamp

・導入方法
上のスクリプトを全て入れて
元のDataManagerのself.initのload_databaseの下の辺りに
load_normal_databasetakolampを挿入します。

・使い方
新しく導入したDataManagerの
$data_lamp_max_numは照らす範囲の最大値にかかわる数字です。
実際に値を入れて確かめながら定めてください。
$data_lamp_min_rは照らす範囲の最小値です。
$data_lamp_reduce_degreeはランプが小さくなる速さです。
$data_lamp_need_dungeon で暗闇にするマップのIDを指定します。
(例:$data_lamp_need_dungeon = [2,3]でID002とID003のマップが暗闇になります。)


ランプをセットするにはスクリプトで$game_player.lamp_timer = X(Xは適当な数値、大きいほどランプが長くもちます)としてください。
上のように$game_player.lamp_timer = Xとした場合は重ねがけ(使った分だけ使用効果延長)ができませんが重ねがけを認める場合は$game_player.lamp_timer += Xとすればできます。

・例
たとえばテストゲームのアイテムのランプは次のようにしています。
まずコモンイベントでランプイベントを作ります。



次にアイテムのランプを作成します。

またランプの効果はこちらから$game_player.lamp_timer = 0としない限り、時間が経過するまで維持されます。テストゲームでは休憩すると$game_player.lamp_timer = 0としてランプ効果を消しています。
次のようにランプクリアイベントを定義して、


休憩した際にこのコモンイベントを実行するようにすればよいです。
休憩もコモンイベント化してそこで上のコモンイベントを実行するようにしておいたほうがいいと思いますが今回はそのまま使いました。
PR

コメント

プロフィール

HN:
tentako
性別:
非公開

P R

フリーエリア