| 2009/06/27(Sat) 22:51:11 編集(投稿者) 2009/06/27(Sat) 22:49:14 編集(投稿者)
格闘成長で成長率の指定をしない方法としては、以下のようなものもあります。 参考程度にしてください。
#-----------------pilot.txt------------------ #パイロットデータに次の一行を追加しておく
格闘成長Lv-1=非表示
#--------------------------------------------
#----include.eve もしくは任意のeveファイル-----
#---------------戦闘前処理--------------------- #攻撃後以外に味方のレベルが上がらないと仮定して、 #攻撃前に現在のレベルを記憶しておく。
*攻撃 味方 敵: If Party(対象パイロット) = 味方 Then Set LvBack Level(対象パイロット) ElseIf Party(相手パイロット) = 味方 Then Set LvBack Level(相手パイロット) EndIf Exit
#-------レベルアップした場合の処理------------
*レベルアップ 味方:
Call StUpAct 対象パイロット
Exit
######################################### # StUpAct # # 内容 : 能力値の上昇を行う # # 引数 : パイロット名 or パイロットID # # 戻り値 : なし # ######################################### StUpAct:
#ローカル変数 格闘値の上昇量 Local UpStr
Do #格闘上昇量の計算 UpStr = Info(パイロット,Args(1),格闘基本値) / 10
#上昇量だけ格闘値を増加 SetSkill Args(1) 格闘UP (Skill(Args(1),格闘UP) + UpStr)
#記憶したレベルをカウントアップ LvBack = LvBack + 1
#一度にレベルが2以上上昇した場合のため、ループ Loop While (Level(対象パイロット) > LvBack)
Return
#-----------------------------------------------
#-------------新規に仲間が加入する場合----------
#Createコマンドの後に以下の2行を追加
Set LvBack Level(新しい仲間のパイロット名) Call StrUpAct 新しい仲間のパイロット名
#-----------------------------------------------
#------------この方法の問題点------------------- 1.新規の仲間加入の場合、レベルが高いとループ回数も上がるため、自然と動作が重くなる。 2.敵にまで同じ処理を行った場合、さらに動作が重くなる。 3.ユニット削除の際に格闘UPなどのClearSkillを怠ると、セーブファイルに蓄積してファイルサイズが増加する。
|