• Anmelden

1

Montag, 26. Dezember 2011, 19:02

'ne simple Auflistung ...oder so

Hallöchen,

ich hoffe ich kann verständlich erklären was ich suche:

...aaalso - Ich möchte eine Liste von Orten haben die ich(per Event) im Spiel ergänzen kann. Nur sollte jeder entdeckte Ort auch anwählbar sein und zu einem CE führen.

Vielleicht gibt es für so etwas ja ein Tutorial, dann müsst ihr euch nicht abmühen.



Ich hoffe das is' einigermaßen verständlich, ich bin dankbar für jede Hilfe - Dankeschön im Vorraus,

Gits
...und so

2

Montag, 26. Dezember 2011, 19:55

also mir is nich ganz klar,was du da suchst...

teleport events oder was genau meinst du?^^
Mein Projekt:
Spoiler

Name: "Glory of Blood"
Entwicklungsstatus: Alpha ( 4 / 100% )
Spielversion: 1.0
Features: Skillsystem / Herstellender Beruf / interaktive Maussteuerung / Rufsystem / Dungeons auf 3 Schwierigkeitsstufen / 8 verschiedene Klassen und zum Release 2 verschiedene Rassen wählbar
zum Lesen den Text mit der Maus markieren

3

Montag, 26. Dezember 2011, 21:02

Es soll ungefähr so aussehen wie der Questlog, nur das die Erklärung auf der rechten Seite verschwindet.

Es sollte aber alles anwählbar sein und jeweils ein CE auslösen.


...ich weiß auch leider nicht wie ich das besser formulieren könnte!
...und so

Screech

Rekrut

Motto: Jeder hat ein Hobby! Selbst wenn man hobbylos ist, hat man das Hobby, hobbylos zu sein!

  • Nachricht senden

4

Dienstag, 27. Dezember 2011, 10:42

ich bin zwar kein xp-nutzer, aber ich gebe trotzdem mal eine vermutung aus:
soll das sowas sein, wenn du das menü öffnest, dass dann dort unter was weiß ich eine liste von orten ist, wo du dich hinteleportieren kannst? praktisch so wie bei pokemon?
Bild

5

Dienstag, 27. Dezember 2011, 15:49

Meinst du vielleicht das hier?
"Einfaches Teleportscript" von agenty

6

Donnerstag, 29. Dezember 2011, 19:49

@ Blackout - Das ist eine der Ideen die ich dazu habe, eine andere ist z.B. das der Spieler Dinge erlernen kann die er dann damit aufrufen kann, wofür ich es am Ende benutzen werde weiß ich noch nicht genau.

Ich suche auch kein existierendes Script sondern jemanden der welche bauen kann, weil ich glaube das sowas kleines nicht allzu schwer sein kann, wenn es das doch ist dann suche ich mir eine andere Lösung.


Ich versuche es nochmal zu beschreiben:

Es soll ungefähr aussehen wie der Questlog, der ja auch nichts anderes ist wie eine Aufzählung(in diesem Fall Quests - in meinem Fall eben Orte, Beschwörungen, Lieder, ...irgendwas).

Diese Liste soll zwei Eigenschaften haben - 1. würde ich die Liste gern, ingame mit einem Event ergänzen können und 2. soll man jeden Punkt auf der Liste (wie bei 'show choices')anwählen können und damit ein CE auslösen.


Ich kenn' mit mit dem Scripten leider überhaupt garnicht aus, deswegen kann ich den Aufwand dafür auch nicht abschätzen. Wenn sowas sehr Aufwendig und Zeit-intensiv ist dann werde ich mir etwas anderes überlegen.
...und so

7

Freitag, 30. Dezember 2011, 00:09

Es ist nicht perfekt , aber es erfüllt all die von dir gegebenen Anforderungen.

Spoiler

Ruby 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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
module CE_List
  # scenes that become active when either B or C was pressed
  SCENE_B = Scene_Map
  SCENE_C = Scene_Map
  # use current map as background (true or false)
  MAP = true
  # the opacity of the list window (0 to 255)
  OPACITY = 160
  # default lists (:title => [common event IDs sperated by a comma],)
  DEFAULT_LISTS = {
    :Orte  => [1, 2, 3],
    :Musik => [4, 5],
  }
  # To show a list: $scene = Scene_CE_List.new(:Orte)
  # To add a list: $game_system.ce_lists[:New] = []
  # To add an entry: $game_system.ce_lists[:New] << 1
  # To delete an entry: $game_system.ce_lists[:New].delete(1)
  # YOU have to make sure a common event ID or list is valid!
end
 
class Game_System
 
  attr_accessor :ce_lists
 
  alias_method :__ce_list_initialize, :initialize
  def initialize
    __ce_list_initialize
    @ce_lists = CE_List::DEFAULT_LISTS.dup
  end
 
end
 
class Window_CE_List < Window_Selectable
 
  def initialize(list)
    super(0, 64, 640, 416)
    @column_max = 2
    @data = $game_system.ce_lists[list]
    refresh
    self.index = 0
  end
 
  def refresh
    if self.contents != nil
      self.contents.dispose
      self.contents = nil
    end
    @item_max = @data.size
    if @item_max > 0
      self.contents = Bitmap.new(width - 32, row_max * 32)
      @item_max.times { |i| draw_item(i) }
    end
  end
 
  def draw_item(index)
    item = $data_common_events[@data[index]].name
    x = 4 + index % 2 * (288 + 32)
    y = index / 2 * 32
    self.contents.font.color = normal_color
    self.contents.draw_text(x, y, 280, 32, item, 0)
  end
 
  def update_help
  end
 
end
 
class Scene_CE_List
 
  def initialize(list)
    @list = list
  end
 
  def main
    @spriteset = Spriteset_Map.new if CE_List::MAP
    @help_window = Window_Help.new
    @list_window = Window_CE_List.new(@list)
    @help_window.opacity  = @list_window.opacity = CE_List::OPACITY
    @help_window.set_text(@list.to_s, 1)
    @list_window.help_window = @help_window
    Graphics.transition
    loop do
      Graphics.update
      Input.update
      update
      break if $scene != self
    end
    Graphics.freeze
    @spriteset.dispose if CE_List::MAP
    @help_window.dispose
    @list_window.dispose
  end
 
  def update
    @list_window.update
    if Input.trigger?(Input::C)
      $game_system.se_play($data_system.decision_se)
      $game_temp.common_event_id = 
        $game_system.ce_lists[@list][@list_window.index]
      $scene = CE_List::SCENE_C.new
    elsif Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      $scene = CE_List::SCENE_B.new
    end
  end
 
end
zum Lesen den Text mit der Maus markieren

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »Cremno« (31. Dezember 2011, 13:32) aus folgendem Grund: Bug behoben


8

Freitag, 30. Dezember 2011, 19:19

Das hier is' mir sehr sehr peinlich, aber ich muss es schreiben:

...magst du's mir kurz erklären? :pardon:
...und so

9

Freitag, 30. Dezember 2011, 22:45

Du solltest dir angewöhnen Anfragen ausführlicher zu stellen. Was soll ich dir denn kurz erklären?

Wie du während des Spiels Listen erstellst, Einträge hinzufügst und entfernst ist doch beschrieben. Einfach den Code in ein "Call Script" einfügen und anpassen. Das New ist der Listenname. Du kannst aber auch Beschwörungen (den Doppelpunkt davor nicht vergessen!) schreiben. Zudem kannst du im Skript Listen vorgeben (DEFAULT_LISTS) - liegt da das Problem?

10

Samstag, 31. Dezember 2011, 11:57

Ich habe jetzt zu diesem Script eine Demo eingestellt.Einiges erklärt sich damit von selbst.
Demo:
ce_liste.rar

Erklärung zu einigen Befehlen:
Um eine Liste aufzurufen gibst du folgendes ein:
$scene = Scene_CE_List.new(:Listenname) <--- Dort wo Listenname steht, trägst du natürlich deinen Namen für die Liste ein.
Um in einer vorhandenen Liste ein Ort, Zauber etc. zu löschen gibst du vor dem Aufruf deiner Liste folgendes im Call Script ein:
$game_system.ce_lists[:Listenname].delete(1) <--- Hier wird jetzt zb aus deiner Liste im Common Events die ID 1 gelöscht.
Um in einer vorhandenen Liste Orte, Zauber etc hinzuzufügen gibst du vor dem Aufruf deiner Liste folgendes im Call Script ein:
$game_system.ce_lists[:Listenname] = [2] <--- Hier wird jetzt zb aus deiner Liste im Common Events die ID 2 hinzugefügt.
Einfügen deiner Namenslisten im Script ab Zeile 10 :

Ruby Quellcode

1
2
3
4
5
DEFAULT_LISTS = {
	:Orte  => [1, 2, 3],	# Liste der Orte im Common Events 1 bis 3
	:Musik => [4, 5],   	# Liste der Musik im Common Events 4 bis 5
	:Spiele => [6, 7 ,8],   # Liste der Spiele im Common Events 6 bis 8
	:Namen => [9, 10, 11, 12], # Liste der Namen im Common Events 9 bis 12

Diese Liste findest du zb bei mir in der Demo.
Ich hoffe ich konnte es dir einigermaßen erklären.
EDIT:
Mir ist aufgefallen, dass wenn ich bei einer zweiten Kategorie zb. den ersten Common Events Namen anwähle, bekomme ich von der
ersten Kategorie des ersten Common Events Namen die zur ausführende Aktion.
Um es besser zu verdeutlichen habe ich eine Demo eingestellt.Wenn ihr die erste Kategorie aufruft und ihr die dazugehörigen Namen aus der
Liste anwählt,bekommt ihr einen Text mit den gleichen Namen.
Sobald ihr aber die zweite Kategorie aufruft und die dazugehörigen Namen aus der Liste anwählt, fängt er wieder bei Common Events 1 an.Bevor ich mir die Finger fusselig schreibe, schaut euch lieber einmal die Demo an, dann versteht ihr eher was ich meine.
Ich hoffe jemand kann dabei helfen,dass jede Namensliste in allen Kategorien seinen eigenen Commont Events aufrufen kann.
Ich bin bisher kläglich gescheitert.
Demo:
ce_liste.rar
MFG
Realität ist auch nur eine Art von Rollenspiel.

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »Asandril« (1. Januar 2012, 03:16)


11

Samstag, 31. Dezember 2011, 13:43

Das war ein Fehler meinerseits. Es war zu spät und ich bin ein wenig aus der Übung. Vielleicht sollte ich es überarbeiten und benutzerfreundlicher machen, aber dann wäre Asandrils Mühe umsonst...

12

Samstag, 31. Dezember 2011, 14:05

Danke Cremno. Nach deinem Update funktioniert jetzt alles Perfekt.
Und ich habe mal wieder was gelernt.
Ich habe jetzt mal für alle anderen eine voll funktionierende Demo eingestellt.
Demo:
CE_LISTE mit Hintergrundbild.rar
MFG
Realität ist auch nur eine Art von Rollenspiel.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Asandril« (31. Dezember 2011, 18:56)


13

Samstag, 31. Dezember 2011, 14:52

Ich konnte es nicht auf mir sitzen lassen. :( Entschuldigung, Asandril. Das obige Skript funktioniert zwar, aber dieses ist schöner und hoffentlich bedienungsfreundlicher.

Spoiler

Ruby 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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
#==============================================================================
# ** Common event lists V2
#------------------------------------------------------------------------------
#  2011-12-31 14:50 RPGXP
#==============================================================================
 
#==============================================================================
# * instructions for use
#==============================================================================
=begin
#------------------------------------------------------------------------------
# Create a list
#------------------------------------------------------------------------------
  # empty list called Places with the description "Places"
  CE_Lists.create_list(:Places)
  # empty list called Places with the description "Teleport to"
  CE_Lists.create_list(:Places, "Teleport to")
  # list called Places with the description "Teleport to" and some IDs
  CE_Lists.create_list(:Places, "Teleport to", 1)
  CE_Lists.create_list(:Places, "Teleport to", 1, 2)
#------------------------------------------------------------------------------
# Delete a list
#------------------------------------------------------------------------------
  CE_Lists.del_list(:Places)
#------------------------------------------------------------------------------
# Display a list
#------------------------------------------------------------------------------
  CE_Lists.display_list(:Places)
#------------------------------------------------------------------------------
# Add an entry
#------------------------------------------------------------------------------
  CE_Lists.add_entry(:Places, 1)
  CE_Lists.add_entry(:Places, 1, 2)
#------------------------------------------------------------------------------
# Delete an entry
#------------------------------------------------------------------------------
  CE_Lists.del_entry(:Places, 1)
  CE_Lists.del_entry(:Places, 1, 2)
=end
 
#==============================================================================
# * Options
#==============================================================================
class Scene_CE_List
  # scenes that become active when either B or C was pressed
  SCENE_B = Scene_Map
  SCENE_C = Scene_Map
  # use current map as background (true or false)
  MAP = true
  # the opacity of the list window (0 to 255)
  OPACITY = 160
end
#==============================================================================
# * common event list commands
#==============================================================================
module CE_Lists
 
  CE_List = Struct.new(:description, :ids)
 
  module_function
 
  def create_list(name, desc = nil, *ids)
    $game_system.ce_lists[name] = CE_List.new(desc || name.to_s, ids)
  end
 
  def del_list(name)
    $game_system.ce_lists.delete(name)
  end
 
  def display_list(name)
    $scene = Scene_CE_List.new(name)
  end
 
  def add_entry(name, *entries)
    $game_system.ce_lists[name].ids.push(*entries)
  end
 
  def del_entry(name, *entries)
    list = $game_system.ce_lists[name].ids
    entries.each { |i| list.delete(i) }
  end
 
end
 
class Game_System
 
  attr_accessor :ce_lists
 
  alias_method :__ce_list_initialize, :initialize
  def initialize
    __ce_list_initialize
    @ce_lists = {}
  end
 
end
 
class Window_CE_List < Window_Selectable
 
  def initialize(list)
    super(0, 64, 640, 416)
    @column_max = 2
    @data = list
    refresh
    self.index = 0
  end
 
  def refresh
    if self.contents != nil
      self.contents.dispose
      self.contents = nil
    end
    @item_max = @data.size
    if @item_max > 0
      self.contents = Bitmap.new(width - 32, row_max * 32)
      @item_max.times { |i| draw_item(i) }
    end
  end
 
  def draw_item(index)
    item = $data_common_events[@data[index]].name
    x = 4 + index % 2 * (288 + 32)
    y = index / 2 * 32
    self.contents.font.color = normal_color
    self.contents.draw_text(x, y, 280, 32, item, 0)
  end
 
  def update_help
  end
 
end
 
class Scene_CE_List
 
  def initialize(list)
    @list = $game_system.ce_lists[list]
  end
 
  def main
    @spriteset = Spriteset_Map.new if MAP
    @help_window = Window_Help.new
    @list_window = Window_CE_List.new(@list.ids)
    @help_window.opacity  = @list_window.opacity = OPACITY
    @help_window.set_text(@list.description, 1)
    @list_window.help_window = @help_window
    Graphics.transition
    loop do
      Graphics.update
      Input.update
      update
      break if $scene != self
    end
    Graphics.freeze
    @spriteset.dispose if MAP
    @help_window.dispose
    @list_window.dispose
  end
 
  def update
    @list_window.update
    if Input.trigger?(Input::C)
      id = @list.ids[@list_window.index]
      if id
        $game_system.se_play($data_system.decision_se)
        $game_temp.common_event_id = id
        $scene = SCENE_C.new
        return
      else
        $game_system.se_play($data_system.buzzer_se)
        return
      end
    elsif Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      $scene = SCENE_B.new
    end
  end
 
end
zum Lesen den Text mit der Maus markieren

Josey

Storyteller

Motto: "Was du nicht willst, das man dir tu', füge keinem And'ren zu!"

  • Nachricht senden

14

Sonntag, 1. Januar 2012, 01:52

Ich hätte da mal eine Anfrage! :D
(Ich gehe jetzt mal von der Demo von Asandril aus, da ich das andere Script noch nicht ausprobiert habe)

Kann man die Fenster so einstellen, dass sie mit einem bestimmten Button aufzurufen gehen?
Und dann das eins erst zu einem anderen führt und dann zum CE?

Also so etwa:
Fenster geht auf:
"Geräusch" "Ort" "Zeit"

Führt zu:
Fenster "Geräusch" -> "Piep" "Wuff"
Fenster "Ort": "Bochum" "Dortmund"
Fenster "Zeit": "Weihnachten" "Neujahr"

Und die sollen dann ein CE auslösen. Und wenns geht noch ein "zurück" in jedes Fenster, geht das so?

(Und kann man die Größe des Fensters variieren [kleiner, so dass es nicht über den ganzen Bildschirm geht]? Ich kenne mich mit Scripts noch nicht so aus ._.)

Frohes, neues Jahr :D
Josey~
Notfalldiscord: Hier klicken


  • Joseys Wuselei

    • Meine Story - Pausiert
      Lust auf Abenteuer?
      So richtig mit Selbstbestimmung?
      Und mit was Spannendem? Zum Spielen? Ohne Schokolade?
      "Eines, das mit dem leistungsstärksten Grafikchip der Welt läuft? Deiner Vorstellungskraft?"
      Hier die Antwort:
      Bild
      Bild
      Hier könnt ihr euren Lieblingschar wählen ;D
      Und hier findet ihr das Minigame, das ab und an den Würfel ersetzt.
    • Meine Arbeiten
      Einige Ressourcen, vor allem Baby-Tiere, aber auch alle Requests, die ich erfüllt habe.
      Bild

      Bild

      In unregelmäßigen Abständen fasse ich alles Neue, was so im Studio passiert ist, zusammen. -Pausiert-
      Bild
    • Meine Fähigkeiten
      Maker: :rmxp: XP
      :rainbow: Pixeln: :star: :star: :star: :star: :star-empty: :star-empty:
      :image: Mappen: :star: :star: :star: :star: :star: :star-empty:
      :wrench-screwdriver: Eventen: :star: :star: :star: :star: :star-empty: :star-empty:
      :puzzle: Scripten: :star: :star-half: :star-empty: :star-empty: :star-empty: :star-empty:
      :music: Komponieren: :star-half: :star-empty: :star-empty: :star-empty: :star-empty: :star-empty:
    • (Mein) Autismus
      Ich bin im autistischen Sprektrum-
      sollte ich mich komisch verhalten, oder unhöflich wirken
      (oder mich zu oft entschuldigen, unaufmerksam sein, unsicher wirken, zum zehnten Mal nachfragen, blablabla),
      ist das nicht beabsichtigt.


      Josey. Epicgarantie.
      Nehmt das bloß nicht ernst! D:
    • Meine Welt
      Mein Ehemann Kain! :heart_full: :*
      Freund und Helfer in der Not, immer da, steht er mir mit Rat und Tat zur Seite. Meine andere Hälfte! : D
      Er verdient einfach einen Platz ( :medal: ) in meiner Signatur! XD
      :heart-half:
    • Mein Support
      Der In-Game-Charset-Generator!
      Erstelle Random-NPCs mit Charsetteilen!

      Diese Spiele finde ich toll und brauchen viel mehr Aufmerksamkeit!
      Bastelt mal Banner! : D

    • Meine beendeten Contests
      [Pixelcontest] Rund um den Kürbis
      Bild
      Abstimmung
      Siegerehrung

      Das Wunder der Berge
      Bild
      Abstimmung
      Siegerehrung
    • Meine Contests
      Bild Ein Schreibcontest in Arbeit! : D Bild
  • Joseys Spiele

    • Endless Ending
      :rmxp: Endless Ending
      (Arbeitstitel, "ernstes Projekt")

      Bild

      Eine Reise durch die Wüste.
      Sieben mächtige Gegenstände.
      Unendlich viele Aufgaben.

      Und die Götter haben die Würfel.
    • Scripted Desaster
      :rmxp: Scripted Desaster
      ("nicht ganz so ernstes Projekt")

      Ein verfressener Idiot und ein sarkastischer Workaholic treffen in einem dunklen Wald auf einen weißes Kaninchen...
      Ein Auftragskiller jagt einem Meisterdieb hinterher, wobei nicht ersichtlich ist, wer eigentlich wen jagt...
      Und eine "Kristallhöhle", sowie einen "Wald ohne Wiederkehr" gibts auch.

      Das bedeutet doch Spaß...
    • Pokémon EV
      :rmxp: Pokemon EV
      ("Zeitvertreib nebenbei - Kreatief-Helfer")

      Ist nur ein Pokemonspiel mit üblicher Story und nicht so üblicher Story.
      Ist inzwischen alles schonmal dagewesen. XD
    • Lost Island
      :rmxp: Harvest Moon - Lost Island
      (Arbeitstitel, "Eventtechnik-Projekt")

      Ist momentan mein Hauptprojekt, weil bei EE die Scripts einfach fehlen :<
      Das Spiel ist ein Harvest Moon Abklatsch. XD
      Felder funktionieren, Tiere auch, Grafiken sehen schon gut aus, Maps sind fast fertig. Man kann in die Miene, man kann einkaufen. Auf dem Papier ist alles schon durchgeplant, einiges muss noch umgesetzt werden.
  • Joseys Fortschritt

    • Endless Ending
      :hourglass: Story: 60%
      :foaf: Charas: 20%
      :leaf: Maps: 01%
      :ruby: Zeichnungen: 05%
      :color: Grafiken: 30%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      ...ist nicht viel, huh? ^^°
    • Scripted Desaster
      :hourglass: Story: 10%
      :foaf: Charas: 60%
      :leaf: Maps: 30%
      :ruby: Zeichnungen: 01%
      :color: Grafiken: 60%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      Gut Ding...
    • Pokemon EV
      :hourglass: Story: 60%
      :foaf: Charas: 10%
      :leaf: Maps: 00%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 80%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 70%
      Nicht ernstnehmen XD Das mache ich nur, wenn woanders nix mehr geht...
    • Lost Island
      :hourglass: Story: 100%
      :foaf: Charas: 10%
      :leaf: Maps: 90%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 60%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 00%
      Das macht richtig Spaß XD
  • Huiii

    Bitte klicken Sie weiter. Hier gibt es nichts zu sehen. Nichts. Hören Sie? Nichts.

15

Sonntag, 8. Januar 2012, 14:27

Wow, kaum hat man mal ein paar Tage keine Zeit zum schreiben herrscht hier Sodom und Gomorra! :D

Ich find's immer wieder großartig was ihr euch für Mühen macht um uns newbies weiter zu helfen, vielen vielen Dank!







...und ich verspreche zu versuchen meine Fragen gezielter zu stellen! ; )
...und so

Ähnliche Themen

Social Bookmarks