赞 | 0 |
VIP | 4 |
好人卡 | 0 |
积分 | 2 |
经验 | 31715 |
最后登录 | 2021-9-11 |
在线时间 | 829 小时 |
Lv1.梦旅人
- 梦石
- 0
- 星屑
- 180
- 在线时间
- 829 小时
- 注册时间
- 2010-6-26
- 帖子
- 671
|
本帖最后由 企鹅达达 于 2010-11-21 19:55 编辑
1.装备了某物件战斗后可以得到双倍金钱.
kgc中有一个KGC_VariableExpGold,可以设置经验或者金钱双倍的状态,配合装备扩张脚本的自动状态可以实现。
2.战斗中装备某物件.可以实行隐身攻击敌人没有特别装备不能发现和攻击我方.
kgc中有个KGC_PassiveSkill(被动技能),可以设置odds,也就是受到攻击的概率,配合装备习得技能可以使用(odds设置为0可能会出错,反正我没试过)。另外也可以使用KGC_Invincible(无敌状态),受到什么攻击都不会有损害……
3.还有个 就是达到一定级别后敌人会远离我方.(明雷模式)
这个,个人觉得事件处理就好,不过的确有一个脚本,不过没有研究过使用方法……- =begin
- ★シンボルエンカウント補助★
- イベントでのシンボルエンカウントの動作を補助します。
- ● 仕様 ●==========================================================
- 指定したキャラクターは、基本ランダム移動を行い、
- プレイヤーが一定距離内に近づくと、プレイヤーを追跡、
- またプレイヤーレベルによっては逃走をするようになります。
- ====================================================================
-
- ● 使い方 ●========================================================
- イベント>自律移動>カスタム>移動ルート>スクリプトに
- @symbol_encount = [true, n]
- と記述してください。nはシンボルが逃げるプレイヤーのレベルです。
- シンボルを逃がしたくない場合は、nにnilを入れてください。
- ====================================================================
-
- ● 注意 ●==========================================================
- ニューゲームから始めないとエラーを吐きます。
- ====================================================================
-
- ver1.31
- Last Update : 2010/03/05
- 03/05 : イベントページ切り替えごとにシンボルエンカウント判定をリセットするようにした
- : シンボルイベントの一時削除が正常に機能しなくなる不具合修正
- 02/27 : クラスをGame_CharacterからGame_Eventに変更
- : 一度見つかったら反応するプレイヤーとの距離が増加するようになりました
- : 見つかった際にフキダシアイコンとSEを再生する機能の追加
- : ダッシュボタンを押していても移動していなければ反応距離が増加しないようになりました
- 08/08 : プレイヤーレベルによって、シンボルが逃げる機能を追加
- : 追跡の挙動を少し変更
- 05/17 : プレイヤーがダッシュしていると発見されやすくなる機能を追加
- 05/06 : 新規
-
- ろかん http://kaisouryouiki.web.fc2.com/
- =end
- #===========================================
- # 設定箇所
- #===========================================
- module Rokan
- module Symbol_Encount
- # シンボルが反応するプレイヤーとの距離(プレイヤー徒歩時)
- DISTANCE_SYMBOL = 3
- # シンボルが反応するプレイヤーとの距離(プレイヤーダッシュ時)
- DISTANCE_SYMBOL_DASH = 5
- # 反応後上昇する移動速度値(変化させたくない場合は 0 にしてください)
- SPEED_SYMBOL = 2
-
- # プレイヤーレベルの判定タイプ
- # 0 => メンバーの平均レベル
- # 1 => メンバーの最大レベル
- # 2 => 主人公(先頭キャラ)のレベル
- ESCAPE_SYMBOL_TYPE = 0
-
- # シンボル反応時にフキダシアイコンエフェクトをかけるかどうか
- SE_EFFECT = true
- end
- end
- #===========================================
- # ここまで
- #===========================================
- $rsi = {} if $rsi == nil
- $rsi["シンボルエンカウント補助"] = true
- class Game_Event < Game_Character
- #--------------------------------------------------------------------------
- # ● インクルード Rokan::Symbol_Encount
- #--------------------------------------------------------------------------
- include Rokan::Symbol_Encount
- #--------------------------------------------------------------------------
- # ● オブジェクト初期化
- #--------------------------------------------------------------------------
- alias initialize_encount? initialize
- def initialize(map_id, event)
- initialize_encount?(map_id, event)
- @forming = false # 追跡中判定
- @symbol_encount = [false, false]
- end
- #--------------------------------------------------------------------------
- # ● イベントページのセットアップ
- #--------------------------------------------------------------------------
- alias se_reset_setup setup
- def setup(new_page)
- # シンボルエンカウント判定初期化
- @forming = false
- @symbol_encount = [false, false]
- se_reset_setup(new_page)
- end
- #--------------------------------------------------------------------------
- # ● プレイヤーレベルの取得
- #--------------------------------------------------------------------------
- def player_level?
- n, a = 0, []
- case ESCAPE_SYMBOL_TYPE
- when 0
- for i in $game_party.members do n += i.level end
- n /= $game_party.members.size
- when 1
- for i in $game_party.members do a << i.level end
- n = a.max
- when 2
- n = $game_party.members[0].level
- end
- return n
- end
- #--------------------------------------------------------------------------
- # ● プレイヤーが指定距離内にいるか
- #--------------------------------------------------------------------------
- def distance_symbol
- # イベント中?一時削除中は追跡を行わない
- if $game_map.interpreter.running?
- return false
- elsif @erased
- @forming = false
- return false
- end
- if @forming
- # 一度見つかったら追跡される距離が増加
- d = DISTANCE_SYMBOL_DASH + 1
- result = ((distance_x_from_player.abs + distance_y_from_player.abs) <= d)
- else
- # ダッシュボタンを押していても移動中でなければ判定を拡張しない
- d = ($game_player.dash? && $game_player.moving?) ?
- DISTANCE_SYMBOL_DASH : DISTANCE_SYMBOL
- result = ((distance_x_from_player.abs + distance_y_from_player.abs) <= d)
- if SE_EFFECT && result
- unless $rsi["フキダシSE"]
- se = RPG::SE.new("Decision1", 50, 150)
- se.play
- end
- @balloon_id = 1
- end
- end
- @forming = result
- return result
- end
- #--------------------------------------------------------------------------
- # ● 追うか逃げるか
- #--------------------------------------------------------------------------
- def toward_or_away?
- @symbol_encount[1] == nil || player_level? <= @symbol_encount[1] ?
- move_toward_player : move_away_from_player
- end
- #--------------------------------------------------------------------------
- # ● 自律移動の更新 ※再定義
- #--------------------------------------------------------------------------
- def update_self_movement
- if @stop_count > 30 * (5 - @move_frequency) && @symbol_encount[0]
- distance_symbol ? toward_or_away? : move_type_random
- elsif @stop_count > 30 * (5 - @move_frequency)
- case @move_type
- when 1; move_type_random
- when 2; move_type_toward_player
- when 3; move_type_custom
- end
- end
- end
- #--------------------------------------------------------------------------
- # ● 移動時の更新 ※再定義
- #--------------------------------------------------------------------------
- def update_move
- distance = (@symbol_encount[0] && distance_symbol) ?
- 2 ** (@move_speed + SPEED_SYMBOL) : 2 ** @move_speed
- distance *= 2 if dash? # ダッシュ状態ならさらに倍
- @real_x = [@real_x - distance, @x * 256].max if @x * 256 < @real_x
- @real_x = [@real_x + distance, @x * 256].min if @x * 256 > @real_x
- @real_y = [@real_y - distance, @y * 256].max if @y * 256 < @real_y
- @real_y = [@real_y + distance, @y * 256].min if @y * 256 > @real_y
- update_bush_depth unless moving?
- if @walk_anime
- @anime_count += 1.5
- elsif @step_anime
- @anime_count += 1
- end
- end
- end
复制代码 明知道我怕麻烦还让我做范例,存心找抽是不是 =.=
ARPG敌人逃跑.rar
(241.65 KB, 下载次数: 30)
|
|