collapse collapse

 Community


 User Info




Willkommen Gast. Bitte einloggen oder registrieren.

 Partnerseiten

rpgvx.net

Das Forum ist offline

Autor Thema: Scene_Map will nit updaten...  (Gelesen 635 mal)

Offline Juggernaut

  • Der Gott des Krieges!
  • Event-Jongleur
  • **
  • Beiträge: 51
Scene_Map will nit updaten...
« am: Januar 03, 2010, 23:09:01 »
Hallo liebe Community...
Ich habe mal wieder ein Problem...
Und zwar will die Scene_Map in folgendem Script nicht updaten(Die KI soll hier ablaufen):
Spoiler for Hiden:
module KI
 
  ENEMY1_NAME = "Dwarf"
  ENEMY1_INDEX = 0
 
  NEUTRAL = {
"erobern" => false,
"rekrutieren" => false,
"fliehen" => false,
"angreifen" => false,
"verfolgen" => false,
"patroullieren" => false,
"bewachen" => false,
"einschreiten" => false,
"karten beschwören" => false,
"warten" => true,
"bewegen" => false
 
 
  }
 
end
 
class Game_Gegner
 
  attr_accessor :g1_ki
  attr_accessor :g2_ki
  attr_accessor :g3_ki
  attr_accessor :g1_allianz
  attr_accessor :g2_allianz
  attr_accessor :g3_allianz
  attr_accessor :g1_held
  attr_accessor :g2_held
  attr_accessor :g3_held
  attr_accessor :e_tr1_moving
  attr_accessor :e1_troop1
  attr_accessor :e1_troop2
  attr_accessor :e1_troop3
  attr_accessor :e1_troop4
 
  def initialize
@g1_ki = nil
@g2_ki = nil
@g3_ki = nil
@g1_allianz = nil
@g2_allianz = nil
@g3_allianz = nil
@g1_held = nil
@g2_held = nil
@g3_held = nil
@e_tr1_moving = false
@e1_troop1 = nil
@e1_troop2 = nil
@e1_troop3 = nil
@e1_troop4 = nil
  end
end
 
class Scene_Map < Scene_Base
 
  alias start_enemy start
  def start
start_enemy
@karte = load_data(sprintf("Data/Map%03d.rvdata", $game_map.map_id))
$game_temp.cur_map = @karte
name_e1tr1 = "E1_Truppe1"
@e1_troop_1 = $game_map.events.values.find_all {|ev| ev.name == name_e1tr1}
name_e1tr2 = "E2_Truppe2"
@e1_troop_2 = $game_map.events.values.find_all {|ev| ev.name == name_e1tr2}
name_e1tr3 = "E3_Truppe3"
@e1_troop_3 = $game_map.events.values.find_all {|ev| ev.name == name_e1tr3}
name_e1tr4 = "E4_Truppe4"
@e1_troop_4 = $game_map.events.values.find_all {|ev| ev.name == name_e1tr4}
name_zita1_tür = "Zitadelle_Gegner1_Tür"
@z1_tür = $game_map.events.values.find_all {|ev| ev.name == name_zita1_tür}
name_kas_tür = "Kaserne_Tür"
@kaserne_tür = $game_map.events.values.find_all {|ev| ev.name == name_kas_tür}
$data_enemies[2].name = KI::ENEMY1_NAME
@e1_troop_1[0].set_graphic("$"+$data_enemies[2].name,KI::ENEMY1_INDEX) if not @e1_troop_1.empty?
$game_gegner.e1_troop1 = @e1_troop_1[0]
$game_gegner.e1_troop2 = @e1_troop_2[0]
$game_gegner.e1_troop3 = @e1_troop_3[0]
$game_gegner.e1_troop4 = @e1_troop_4[0]
  end
 
 
 
  alias update_enemy update
  def update
update_enemy
act_condition_tr1
  end
 
  def act_condition_tr1
 
if KI::NEUTRAL["bewegen"] == true
  if $game_gegner.e_tr1_moving == false
    @this_x = rand(@karte.width)
    @this_y = rand(@karte.height)
    $game_gegner.e_tr1_moving = true
  end
  @e1_troop_1[0].force_path (@this_x, @this_y, false, 0)
  if @e1_troop_1[0].x == @this_x and @e1_troop_1[0].y == @this_y
    KI::NEUTRAL["warten"] = true
    KI::NEUTRAL["bewegen"] = false
    $game_gegner.e_tr1_moving = false
  end
elsif KI::NEUTRAL["erobern"] == true
  p(@kaserne_tür[0].id)
  @this_x = @kaserne_tür[0].x
  @this_y = @kaserne_tür[0].y + 1
  if $game_gebäude.gemetzel_gebäude["Kaserne"] == nil or $game_gebäude.gemetzel_gebäude["Kaserne"] == 1
    @e1_troop_1[0].force_path (@this_x, @this_y, false, 0)
    if @e1_troop_1[0].pos?(@this_x,@this_y)
      @wait_count = 420
      $game_gebäude.gemetzel_gebäude["Kaserne"] = 2
    end
  else
    KI::NEUTRAL["erobern"] = false
    KI::NEUTRAL["warten"] = true
  end
elsif KI::NEUTRAL["rekrutieren"] == true
 
elsif KI::NEUTRAL["fliehen"] == true
 
elsif KI::NEUTRAL["angreifen"] == true
 
elsif KI::NEUTRAL["verfolgen"] == true
  @this_x = $game_player.x + 1
  @this_y = $game_player.y
  @e1_troop_1[0].force_path (@this_x, @this_y, false, 0)
elsif KI::NEUTRAL["patroullieren"] == true
  @this_x = @z1_tür[0].x
  @this_y = @z1_tür[0].y + 1
  @old_x = @e1_troop_1[0].x
  @old_y = @e1_troop_1[0].y
  if @e1_troop_1[0].pos?(@old_x,@old_y)
    @e1_troop_1[0].force_path (@this_x, @this_y, false, 0)
  elsif @e1_troop_1[0].pos?(@this_x,@this_y)
    @e1_troop_1[0].force_path (@old_x, @old_y, false, 0)
  end
elsif KI::NEUTRAL["bewachen"] == true
 
elsif KI::NEUTRAL["einschreiten"] == true
  @this_x = $game_player.x + 1
  @this_y = $game_player.y
  @e1_troop_1[0].force_path (@this_x, @this_y, false, 0)
elsif KI::NEUTRAL["karten beschwören"] == true
 
end
 
  end
 
end

Habe auf der Map für Testzwecke ein call Scriptevent mit
KI::NEUTRAL["bewegen"] = true
KI::NEUTRAL["warten"] = false

Er switch die KI dann nicht um... :hilfe:

PS: Hab da ein paar scripte im game drin wodurch z.B. $game_gebäude.gemetzel_gebäude["Kaserne"] möglich ist ;)

Re: Scene_Map will nit updaten...

Offline Herendil

  • Jarl Turindo
  • Moderator
  • Mr. MACK-Tile
  • ***
  • Beiträge: 283
  • Jarl Turindo
Re: Scene_Map will nit updaten...
« Antwort #1 am: Januar 03, 2010, 23:16:24 »
Soweit ich weiß, kann man Sachem aus Modulen nicht verändern^^ Sonst schön geworden.

Re: Scene_Map will nit updaten...

Offline Juggernaut

  • Der Gott des Krieges!
  • Event-Jongleur
  • **
  • Beiträge: 51
Re: Scene_Map will nit updaten...
« Antwort #2 am: Januar 03, 2010, 23:20:05 »
heißt ich muss es in ne extra class packen? dachte auch in modulen kann man sachen verändern...
EDIT:
So hab das jetz ma in ne class $ki gemacht...
funktioniert trotzdem nicht... ich hab mal geschaut mit p("hi") ob er überhaupt in das update reinkommt... fehlanzeige... er springt trotz dem aliassing nicht rein...

« Letzte Änderung: Januar 08, 2010, 15:08:00 von Juggernaut »

 


 Bild des Monats

rooftop party

Views: 3583
By: papilion

 Umfrage

  • Wer soll das BdM gewinnen?
  • Dot Kandidat 1
  • 3 (25%)
  • Dot Kandidat 2
  • 1 (8%)
  • Dot Kandidat 3
  • 2 (16%)
  • Dot Kandidat 4
  • 0 (0%)
  • Dot Kandidat 5
  • 6 (50%)
  • Stimmen insgesamt: 12
  • View Topic

 Schnellsuche





SimplePortal 2.3.3 © 2008-2010, SimplePortal