• Anmelden

1

Freitag, 29. Februar 2008, 20:49

text window im script

Hey, ich bin grad am erstellen von Scene_Help, eine option, die vom titel und menü aus aufzurufen ist...
bei einer option soll ein text in einem window angezeigt werden, sprich:
Bei scene_help ist ein command window aktiv, bei der es verschiedene optionen zur auswahl gibt, eine davon soll mir einen text in einem nebenstehenden window zeigen...
so sieht der command bisher aus

Quellcode

1
2
3
def command_steuerung
 @command_window.active = false
end


nicht sehr viel, oder?
was muss ich also hinzufügen?

cow
Spoiler: Sachen
zum Lesen den Text mit der Maus markieren

2

Freitag, 29. Februar 2008, 21:58

Du könntest im NebenWindow die verschiedenen Texte Machen und eine Variable mit attr:accessor, welche du dann je nach index veränderst.

Bei der Windowklasse

Ruby Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
def refrash
self.contents.clear
self.contents.draw_text(...) if @text = 1
self.contents.draw_text(...) if @text = 2
self.contents.draw_text(...) if @text = 3
@oldtext = text
update
end
 
def update
  if @oldtext != text
    refresh
  end
  super
end


Im Scene_Help machst du dann Update so:

Ruby Quellcode

1
2
3
4
5
6
7
8
def update
case @command_window.index
when 0
  @window.text = 1
when 1
  @window.text = 2
[...]
#update objects

3

Freitag, 29. Februar 2008, 22:36

Blöd, damit kann ich leider nichts anfangen
ich erklär mal genauer:
neben dem command window hab ich ein base window
so, jetzt ist steuerung = s1 = index0
dann steh im script editor

Quellcode

1
2
when 0
 # und hier brauch ich den code um im base window den text (beispiel)"blablabla" anzeigen zu lassen

Attachment 2270
Spoiler: Sachen
zum Lesen den Text mit der Maus markieren

4

Samstag, 1. März 2008, 08:53

Und bei den anderen soll nichts erscheinen? Dann musst du eben

Ruby Quellcode

1
2
3
4
def command_steuerung
    @command_window.aktive = false
    @base_window.text = true
  end

Aber eben auch in Update

Ruby Quellcode

1
2
3
4
if @base_window.text == true and Input.trigger?(Input::B)
  @command_window.aktive = true
  @base_window.text = false
end

In Class Basewindow

Ruby Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
attr_accessor  :text
def refresh
  self.contents.clear
  if text == true
    self.contents.draw_text(...)
  end 
  @old_text = @text
end
def update
  if @text != @old_text
    refresh
  end
  super
end

5

Samstag, 1. März 2008, 09:14

sorry, dass ich es nicht raff
das da muss in scene_help beim command steuerung

Quellcode

1
2
3
4
if @base_window.text == true and Input.trigger?(Input::B)
  @command_window.aktive = true
  @base_window.text = false
end

das da wohin? genau!

Quellcode

1
2
3
4
if @base_window.text == true and Input.trigger?(Input::B)
  @command_window.aktive = true
  @base_window.text = false
end

und das da im window_base script, aber wo?

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
attr_accessor  :text
def refresh
  self.contents.clear
  if text == true
    self.contents.draw_text(...)
  end 
  @old_text = @text
end
def update
  if @text != @old_text
    refresh
  end
  super
end

ich hab's versucht, es kamen aber weder fehlermeldungen noch text im base window
Spoiler: Sachen
zum Lesen den Text mit der Maus markieren

Social Bookmarks