Startseite »
Forum »
RPG-Studio.org - Community »
Community-Forum »
Öffentliches Archiv »
RGSS Archiv »
^^ das da ist für Variable Monster und nicht für verschiedene Gegenstände. Ich möchte ein Script womit ein und dasselbe Monster (natürlich in mehrere Kämpfen) verschiedene Items fallen läst. Deshalb habe ich wohl auf polymortis nix gefunden in der Scriptliste. (wenn ich total falsch liege sag mir wo der Kram genau steht)
Das Script würde dafür wohl auch gehen
nur bissel umständlicher
Man kann ja das gleiche Monster zB 5mal machen und jeweils ein anderes Item geben bzw keines
und dann macht dieses script immer unterschiedliche Konstelationen dieser Monster, wodurch man denken würde, das selbe Monster würde immer verschiedene items fallen lassen
nur bissel umständlicher
Man kann ja das gleiche Monster zB 5mal machen und jeweils ein anderes Item geben bzw keines
und dann macht dieses script immer unterschiedliche Konstelationen dieser Monster, wodurch man denken würde, das selbe Monster würde immer verschiedene items fallen lassen
@sorry habs echt verschlampt, gut dann bauen wir es halt selber in Scene_Battle 2 hast du:
und darin wird die sachen zugewiesen, nun dürfte es ja net mehr schwer sein einen rand(x) befehl einzubauen.
Bei Fragen schrei wieder rum
|
|
Quellcode |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
def start_phase5
# フェーズ 5 に移行
@phase = 5
# バトル終了 ME を演奏
$game_system.me_play($game_system.battle_end_me)
# バトル開始前の BGM に戻す
$game_system.bgm_play($game_temp.map_bgm)
# EXP、ゴールド、トレジャーを初期化
exp = 0
gold = 0
treasures = []
# ループ
for enemy in $game_troop.enemies
# エネミーが隠れ状態でない場合
unless enemy.hidden
# 獲得 EXP、ゴールドを追加
exp += enemy.exp
gold += enemy.gold
# トレジャー出現判定
if rand(100) < enemy.treasure_prob
if enemy.item_id > 0
treasures.push($data_items[enemy.item_id])
end
if enemy.weapon_id > 0
treasures.push($data_weapons[enemy.weapon_id])
end
if enemy.armor_id > 0
treasures.push($data_armors[enemy.armor_id])
end
end
end
end
# トレジャーの数を 6 個までに限定
treasures = treasures[0..5]
# EXP 獲得
for i in 0...$game_party.actors.size
actor = $game_party.actors[i]
if actor.cant_get_exp? == false
last_level = actor.level
actor.exp += exp
if actor.level > last_level
@status_window.level_up(i)
end
end
end
# ゴールド獲得
$game_party.gain_gold(gold)
# トレジャー獲得
for item in treasures
case item
when RPG::Item
$game_party.gain_item(item.id, 1)
when RPG::Weapon
$game_party.gain_weapon(item.id, 1)
when RPG::Armor
$game_party.gain_armor(item.id, 1)
end
end
# バトルリザルトウィンドウを作成
@result_window = Window_BattleResult.new(exp, gold, treasures)
# ウェイトカウントを設定
@phase5_wait_count = 100
end |
und darin wird die sachen zugewiesen, nun dürfte es ja net mehr schwer sein einen rand(x) befehl einzubauen.
Bei Fragen schrei wieder rum
also dann sags doch.
ersetze
if rand(100) < enemy.treasure_prob
if enemy.item_id > 0
treasures.push($data_items[enemy.item_id])
end
if enemy.weapon_id > 0
treasures.push($data_weapons[enemy.weapon_id])
end
if enemy.armor_id > 0
treasures.push($data_armors[enemy.armor_id])
end
end
für die items enemy.item_id mit dem Item deiner Wahl (zB. 12) für die auswahl zwischen allen Items musste rand($data_items.size) nehmen,
ersetze
if rand(100) < enemy.treasure_prob
if enemy.item_id > 0
treasures.push($data_items[enemy.item_id])
end
if enemy.weapon_id > 0
treasures.push($data_weapons[enemy.weapon_id])
end
if enemy.armor_id > 0
treasures.push($data_armors[enemy.armor_id])
end
end
für die items enemy.item_id mit dem Item deiner Wahl (zB. 12) für die auswahl zwischen allen Items musste rand($data_items.size) nehmen,

YAams
Random Signatur