Ogłoszenie 

Uwaga! To forum jest w trybie offline.
Wszelką pomoc uzyskasz pod adresem
forum.ultimateam.pl


Administracja Forum


Poprzedni temat «» Następny temat
Dziennik zadań
Autor Wiadomość
FireBlade 




Preferowany:
RPG Maker VX

Pomogła: 8 razy
Dołączyła: 04 Kwi 2010
Posty: 243
Skąd: Opole
Wysłany: Pią 16 Kwi, 2010 20:38
Dziennik zadań
Dziennik Zadań v3.0



Opis
Skrypt na dziennik misji.

Zalety:
- Nie powinien kolidować z innymi skryptami.
- Możliwość dodania nieskończonej liczby zadań.
- Podział na nieukończone i ukończone.
- Gracz na początku gry nie widzi wszystkich zadań.
- Miejsce na krótki opis.
- Miejsce na opis nagrody.
- Tytuł.
- Duży opis po wejściu w tytuł zadania.

Wady:
- Trudny w konfiguracji.
- Wymaga dużo zmiennych do poprawnego działania.

Autor skryptu
Melvin

Kompatybilność
Tylko XP

Skrypt
Spoiler:

Kod:
#==============================================================================
# Scene_Zadania_Menu
#------------------------------------------------------------------------------
# Dziennik zadań by Melvin (v3.0)
#==============================================================================
class Scene_Zadania_Menu
def initialize(menu_index = 0)
@menu_index = menu_index
end
def main
if $game_switches[02] == true
s1 = "Przeprawa"
else
s1 = "???"
end
s2 = "???"
@command_window = Window_Command.new(175, [s1, s2])
@command_window.height = 15 * 32
@quests_window = Window_Zadania_Nazwa.new
@nagroda_window = Window_Zadania_Nagroda.new
@opis1_window = Window_Zadania_Informacja1.new
@opis2_window = Window_Zadania_Informacja2.new
@opis3_window = Window_Zadania_Informacja3.new
@opis4_window = Window_Zadania_Informacja4.new
@opis5_window = Window_Zadania_Informacja5.new
@opis6_window = Window_Zadania_Informacja6.new
@opis7_window = Window_Zadania_Informacja7.new
@opis8_window = Window_Zadania_Informacja8.new
@quests_window.update("")
@nagroda_window.update("")
@opis1_window.update("")
@opis2_window.update("")
@opis3_window.update("")
@opis4_window.update("")
@opis5_window.update("")
@opis6_window.update("")
@opis7_window.update("")
@opis8_window.update("")
@quests_window.x = 175
@quests_window.y = 0
@opis1_window.x = 175
@opis1_window.y = 70
@opis2_window.x = 175
@opis2_window.y = 70
@opis3_window.x = 175
@opis3_window.y = 70
@opis4_window.x = 175
@opis4_window.y = 70
@opis5_window.x = 175
@opis5_window.y = 70
@opis6_window.x = 175
@opis6_window.y = 70
@opis7_window.x = 175
@opis7_window.y = 70
@opis8_window.x = 175
@opis8_window.y = 70
@nagroda_window.x = 175
@nagroda_window.y = 350
Graphics.transition
loop do
Graphics.update
Input.update
update
if $scene != self
break
end
end
Graphics.freeze
@command_window.dispose
@quests_window.dispose
@opis1_window.dispose
@opis2_window.dispose
@opis3_window.dispose
@opis4_window.dispose
@opis5_window.dispose
@opis6_window.dispose
@opis7_window.dispose
@opis8_window.dispose
@nagroda_window.dispose
end
def update
case @command_window.index
when 0
@quests_window.update("???")
@nagroda_window.update("Nagroda: ???")
@opis1_window.update("???")
@opis2_window.update("")
@opis3_window.update("")
@opis4_window.update("")
@opis5_window.update("")
@opis6_window.update("")
@opis7_window.update("")
@opis8_window.update("")
if $game_switches[02] == true
if $game_switches[01] == true
@quests_window.update(" Zadanie - Ukończone (Dokładny opis)")
@nagroda_window.update("Nagroda: Całkowite wyleczenie")
@opis1_window.update("Dostań się na drugi brzeg")
@opis2_window.update("I dojdź do portalu.")
@opis3_window.update("Musisz wykonać:")
@opis4_window.update("- Przejdź przez rzekę")
@opis5_window.update("- Dostań się do portalu")
@opis6_window.update("To jest główne zadanie")
@opis7_window.update("- Brak")
@opis8_window.update("Dziennik zadań by Melvin (v3.0)")
else
@quests_window.update(" Zadanie - Nieukończone (Dokładny opis)")
@nagroda_window.update("Nagroda: Całkowite wyleczenie")
@opis1_window.update("Dostań się na drugi brzeg")
@opis2_window.update("I dojdź do portalu.")
@opis3_window.update("Zadaniea główne")
@opis4_window.update("- Przejdź przez rzekę")
@opis5_window.update("- Dostań się do portalu")
@opis6_window.update("Zadania dodatkowe")
@opis7_window.update("- Brak")
@opis8_window.update("Dziennik zadań by Melvin (v3.0)")
end
end
when 1
@quests_window.update("???")
@nagroda_window.update("Nagroda: ???")
@opis1_window.update("???")
@opis2_window.update("")
@opis3_window.update("")
@opis4_window.update("")
@opis5_window.update("")
@opis6_window.update("")
@opis7_window.update("")
@opis8_window.update("")
end
@command_window.update
if @command_window.active
update_command
return
end
if @quests_window.active
update_status
return
end
end
def update_command
if Input.trigger?(Input::B)
$game_system.se_play($data_system.cancel_se)
$scene = Scene_Menu.new(4)
return
end
if Input.trigger?(Input::C)
if $game_party.actors.size == 0 and @command_window.index < 4
$game_system.se_play($data_system.buzzer_se)
return
end
case @command_window.index
when 0
if $game_switches[02] == true
$game_system.se_play($data_system.decision_se)
@command_window.active = false
@quests_window.active = true
@quests_window.index = 0
else
$game_system.se_play($data_system.buzzer_se)
end
when 1
$game_system.se_play($data_system.buzzer_se)
end
return
end
end
def update_status
if Input.trigger?(Input::B)
$game_system.se_play($data_system.cancel_se)
@command_window.active = true
@quests_window.active = false
@quests_window.index = -1
return
end
if Input.trigger?(Input::C)
case @command_window.index
when 0
if $game_switches[02] == true
$game_system.se_play($data_system.decision_se)
$scene = Scene_Zadanie_1.new
end
end
return
end
end
end
#------------------------------------------------------------------------------
# Window_Zadania_Nazwa
#------------------------------------------------------------------------------
class Window_Zadania_Nazwa < Window_Selectable
def initialize
super(0, 0, 465, 70)
self.contents = Bitmap.new(width-32, height-32)
self.contents.font.name = "Comic Sans MS"
self.contents.font.size = 32
self.back_opacity = 255
refresh
self.active = false
self.index = -1
end
def update(text1)
self.contents.clear
self.contents.draw_text(0, 0, 440, 30, text1)
end
def refresh
self.contents.clear
end
def update_cursor_rect
if @index < 0
self.cursor_rect.empty
else
self.cursor_rect.set(0, @index * 116, self.width - 32, 30)
end
end
end
#------------------------------------------------------------------------------
# Window_Zadania_Nagroda
#------------------------------------------------------------------------------
class Window_Zadania_Nagroda < Window_Base
def initialize
super(0, 0, 465, 70)
self.contents = Bitmap.new(width-32, height-32)
self.contents.font.name = "Comic Sans MS"
self.contents.font.size = 30
self.back_opacity = 255
end
def update(text2)
self.contents.clear
self.contents.draw_text(0, 0, 440, 32, text2)
end
end
#------------------------------------------------------------------------------
# Window_Zadania_Opis1 (Linijka 1)
#------------------------------------------------------------------------------
class Window_Zadania_Informacja1 < Window_Base
def initialize
super(0, 0, 465, 280)
self.contents = Bitmap.new(width - 32, height - 32)
self.contents.font.name = "Comic Sans MS"
self.contents.font.size = 30
self.back_opacity = 255
end
def update(text3)
self.contents.clear
self.contents.draw_text(4, 0, 640, 32, text3)
end
end
#------------------------------------------------------------------------------
# Window_Zadania_Opis2 (Linijka 2)
#------------------------------------------------------------------------------
class Window_Zadania_Informacja2 < Window_Base
def initialize
super(0, 0, 465, 280)
self.contents = Bitmap.new(width - 32, height - 32)
self.contents.font.name = "Comic Sans MS"
self.contents.font.size = 30
self.back_opacity = 255
end
def update(text4)
self.contents.clear
self.contents.draw_text(4, 0, 640, 94, text4)
end
end
#------------------------------------------------------------------------------
# Window_Zadania_Opis3 (Linijka 3)
#------------------------------------------------------------------------------
class Window_Zadania_Informacja3 < Window_Base
def initialize
super(0, 0, 465, 280)
self.contents = Bitmap.new(width - 32, height - 32)
self.contents.font.name = "Comic Sans MS"
self.contents.font.size = 30
self.back_opacity = 255
end
def update(text5)
self.contents.clear
self.contents.draw_text(4, 0, 640, 156, text5)
end
end
#------------------------------------------------------------------------------
# Window_Zadania_Opis4 (Linijka 4)
#------------------------------------------------------------------------------
class Window_Zadania_Informacja4 < Window_Base
def initialize
super(0, 0, 465, 280)
self.contents = Bitmap.new(width - 32, height - 32)
self.contents.font.name = "Comic Sans MS"
self.contents.font.size = 30
self.back_opacity = 255
end
def update(text6)
self.contents.clear
self.contents.draw_text(4, 0, 640, 218, text6)
end
end
#------------------------------------------------------------------------------
# Window_Zadania_Opis5 (Linijka 5)
#------------------------------------------------------------------------------
class Window_Zadania_Informacja5 < Window_Base
def initialize
super(0, 0, 465, 280)
self.contents = Bitmap.new(width - 32, height - 32)
self.contents.font.name = "Comic Sans MS"
self.contents.font.size = 30
self.back_opacity = 255
end
def update(text7)
self.contents.clear
self.contents.draw_text(4, 0, 640, 280, text7)
end
end
#------------------------------------------------------------------------------
# Window_Zadania_Opis6 (Linijka 6)
#------------------------------------------------------------------------------
class Window_Zadania_Informacja6 < Window_Base
def initialize
super(0, 0, 465, 280)
self.contents = Bitmap.new(width - 32, height - 32)
self.contents.font.name = "Comic Sans MS"
self.contents.font.size = 30
self.back_opacity = 255
end
def update(text8)
self.contents.clear
self.contents.draw_text(4, 0, 640, 342, text8)
end
end
#------------------------------------------------------------------------------
# Window_Zadania_Opis7 (Linijka 7)
#------------------------------------------------------------------------------
class Window_Zadania_Informacja7 < Window_Base
def initialize
super(0, 0, 465, 280)
self.contents = Bitmap.new(width - 32, height - 32)
self.contents.font.name = "Comic Sans MS"
self.contents.font.size = 30
self.back_opacity = 255
end
def update(text9)
self.contents.clear
self.contents.draw_text(4, 0, 640, 404, text9)
end
end
#------------------------------------------------------------------------------
# Window_Zadania_Opis8 (Linijka 8)
#------------------------------------------------------------------------------
class Window_Zadania_Informacja8 < Window_Base
def initialize
super(0, 0, 465, 280)
self.contents = Bitmap.new(width - 32, height - 32)
self.contents.font.name = "Comic Sans MS"
self.contents.font.size = 30
self.back_opacity = 255
end
def update(text10)
self.contents.clear
self.contents.draw_text(4, 0, 640, 466, text10)
end
end
#==============================================================================
# Scene_Zadania
#==============================================================================
#--------------------------------------------------------------------------
# Scene_Zadanie_1
#--------------------------------------------------------------------------
class Scene_Zadanie_1
def main
@status_window = Window_Zadanie_1.new
Graphics.transition
loop do
Graphics.update
Input.update
update
if $scene != self
break
end
end
Graphics.freeze
@status_window.dispose
end
def update
if Input.trigger?(Input::B)
$game_system.se_play($data_system.cancel_se)
$scene = Scene_Zadania_Menu.new(0)
return
end
end
end
#--------------------------------------------------------------------------
# Window_Zadanie_1
#--------------------------------------------------------------------------
class Window_Zadanie_1 < Window_Base
def initialize
super(0, 0, 640, 480)
self.contents = Bitmap.new(width - 32, height - 32)
self.contents.font.name = "Comic Sans MS"
self.contents.font.size = 24
self.back_opacity = 255
refresh
end
def refresh
self.contents.draw_text(4, 0, 640, 32, "Znajdź sposób na dostanie się na drugi brzeg i dojdź do portalu czasu.", 0)
end
end




Dodatki
Brak

Screenshot
Spoiler:


Brak zadań:

Zadanie "Przeprawa" jest nieukończone:

Zadanie "Przeprawa" jest ukończone:

Zaznaczone jest puste zadanie:

Dokładny opis zadania:



Demo
876.25 KB


Instalacja skryptu

1 - Wkleić skrypt nad main w edytorze skryptów.
Dalsza instalacja: (Instalacja pozycji w menu)
Spoiler:

2 - W "Scene_Menu" dodać:

Cytat:
s7 = "Zadania"

Pod:

Cytat:
s1 = $data_system.words.item
s2 = $data_system.words.skill
s3 = $data_system.words.equip
s4 = "Status"
s5 = "Zadania"
s6 = "Koniec"

3 - W "Scene_Menu" dodać:

Cytat:
, s7

Po:

Cytat:
, s6

4 - W "Scene_Menu" dodać:

Cytat:
when 6 # quests
# Play decision SE
$game_system.se_play($data_system.decision_se)
# Switch to end game screen
$scene = Scene_Zadania_Menu.new

Po:

Cytat:
when 5 # end game
# Play decision SE
$game_system.se_play($data_system.decision_se)
# Switch to end game screen
$scene = Scene_End.new


Konfiguracja
Zmiana ustawień skryptu znajduję się na początku kodu.


Dodatkowe informacje
- Działa na polskiej jak i angielskiej wersji R'M XP.
________________________
"Nigdy się nie tłumacz, przyjaciele tego nie potrzebują a wrogowie i tak nie uwierzą.,"

"Oklaski są z łaski a brawa to wielka sprawa"

"Akcpetuję tylko wodę, mountain dew i coca colę zero..."

DeviantArt : http://divinekataroshie.deviantart.com/
 
 
 
Czeliosss 



Ranga RM:
1 gra

Pomógł: 49 razy
Dołączył: 02 Lis 2009
Posty: 661
Skąd: Wa-wa
Wysłany: Pią 16 Kwi, 2010 20:46
Skrypt fajny, ale powiedz Melvinowi, żeby dał też jakieś okno na obrazek to było by dobrze.
Typ obrazka:
- Postać od, której się dostało misję
- screen przedstawiający misję
- Przedmiot do zdobycia
- Nagroda
Pzdr.
________________________
...Amelanduil & FireBlade words will be remembered...
...Amelanduil & FireBlade acts will be remembered...
...Amelanduil & FireBlade never gonna die...

Nie pisać, bo nie odpiszę.
 
 
Nemma12 



Preferowany:
RPG Maker XP

Dołączył: 07 Lut 2011
Posty: 19
Wysłany: Pią 11 Lut, 2011 17:52
ej a jak misje otszymac??
________________________



 
 
superbaton 



Preferowany:
RPG Maker XP

Dołączył: 11 Sty 2011
Posty: 20
Wysłany: Pon 28 Lut, 2011 17:23
Moze by ktos podal jak uzyskac misje?
________________________
http://grawbank.tk/451/baton Kliknijcie zbieram na rpgmakera:):D
 
 
Bezel 




Dołączył: 08 Lis 2009
Posty: 84
Wysłany: Nie 19 Cze, 2011 16:49
Może ktoś z re-hostować ?
________________________
 
 
Melvin 




Preferowany:
RPG Maker XP

Ranga RM:
1 gra

Pomógł: 35 razy
Dołączył: 23 Paź 2009
Posty: 1063
Wysłany: Nie 19 Cze, 2011 17:19
http://rmxp.pl/index.php?topic=5055.0
Tu macie nowszą wersję.
________________________
MelvinClass:
Spoiler:

 
 
Bezel 




Dołączył: 08 Lis 2009
Posty: 84
Wysłany: Nie 19 Cze, 2011 18:24
A, można zrobić by nie było tych znaków zapytania jak nie masz tego zadania tylko poprostu pustka ?
________________________
 
 
Melvin 




Preferowany:
RPG Maker XP

Ranga RM:
1 gra

Pomógł: 35 razy
Dołączył: 23 Paź 2009
Posty: 1063
Wysłany: Nie 19 Cze, 2011 18:31
Daruj sobie już ten skrypt, bo jak nie wiesz jak to usunąć, to go na pewno nie skonfigurujesz..
________________________
MelvinClass:
Spoiler:

 
 
Bezel 




Dołączył: 08 Lis 2009
Posty: 84
Wysłany: Nie 19 Cze, 2011 18:57
Narazie wogóle go nie sprawdzałem, ale widziałem, że były tam znaki zapytania...
Nie znam ruby, ale skrypt skonfigurować umiem...
Czy da się to przestawić w opcjach czy coś?
________________________
 
 
Melvin 




Preferowany:
RPG Maker XP

Ranga RM:
1 gra

Pomógł: 35 razy
Dołączył: 23 Paź 2009
Posty: 1063
Wysłany: Nie 19 Cze, 2011 20:26
Jak zajrzysz w skrypt to się dowiesz... :kable:

Cytat:
Nie znam ruby, ale skrypt skonfigurować umiem...

A ten skrypt wymaga podstaw Ruby.
________________________
MelvinClass:
Spoiler:

 
 
MSQI 




Preferowany:
RPG Maker XP

Dołączył: 07 Maj 2011
Posty: 61
Wysłany: Nie 19 Cze, 2011 20:49
w dokładnie w które miejsce wkleić ten skrypt?
 
 
Melvin 




Preferowany:
RPG Maker XP

Ranga RM:
1 gra

Pomógł: 35 razy
Dołączył: 23 Paź 2009
Posty: 1063
Wysłany: Nie 19 Cze, 2011 21:22
http://www.ultimateam.pl/viewtopic.php?t=2254 :kable:
________________________
MelvinClass:
Spoiler:

 
 
MSQI 




Preferowany:
RPG Maker XP

Dołączył: 07 Maj 2011
Posty: 61
Wysłany: Nie 19 Cze, 2011 22:09
wkleiłem tak jak pokazane w tym poradniku najnowszą wersję twojego skryptu i jak klikam esc to nie ma tam zakładki zadania
 
 
Melvin 




Preferowany:
RPG Maker XP

Ranga RM:
1 gra

Pomógł: 35 razy
Dołączył: 23 Paź 2009
Posty: 1063
Wysłany: Nie 19 Cze, 2011 22:13
OMG!!!!!!!!!!!!!!!!!!! TO TRZEBA DODAĆ W MENU!!!!
________________________
MelvinClass:
Spoiler:

 
 
MSQI 




Preferowany:
RPG Maker XP

Dołączył: 07 Maj 2011
Posty: 61
Wysłany: Pon 20 Cze, 2011 06:45
jak?
 
 
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

Powered by phpBB modified by Przemo © 2003 phpBB Group | Template Klam by Ayene