UltimaForum

Skrypty [XP] - Nazwa Lokacji

Lartarin - Wto 20 Paź, 2009 08:07
Temat postu: Nazwa Lokacji
Aloha!

Dzisiaj mam dla was podobny skrypcik (właściwie ten sam) co dodała jakiś czas temu SaE.
Pokazuje on nazwę lokacji w której właśnie się znajdujemy. Wystarczy do folderu Pictures wrzucić obrazek zamieszczony poniżej. Jeżeli nie chce się wam tego robić to też nic się nie stanie :lartarin:

Oto skrypt:
Spoiler:

Kod:
# Nazwa Lokacji 
# W pictures wrzuć obrazek o nazwie NazwaMapy, a jak nie wrzucisz to też
# będzie "wporzo" ^@^
#_______________________________________________________________________________
# By Moghunter
#_______________________________________________________________________________
module MOG
#Font Name.
MPFONT = "Comic Sans MS"
#Zanik true/false
MPNMFD = true
#Zanik
MPNMTM = 10
#Pozycja obrazka
# 0 = Górny lewy
# 1 = Dolny lewy
# 2 = Górny prawy
# 3 = Dolny prawy
MPNMPS = 2
# Nr przełącznika wyłączającego/włączającego nazwę lokacji
WM_SWITCH_VIS_DISABLE = 15
end
#_________________________________________________
$mogscript = {} if $mogscript == nil
$mogscript["Location_Name"] = true

class Game_System
attr_accessor :fdtm
attr_accessor :mpnm_x
attr_accessor :mpnm_y
alias mog24_initialize initialize
def initialize
mog24_initialize
@fdtm = 255 + 40 * MOG::MPNMTM
if MOG::MPNMPS == 0
@mpnm_x = -300
@mpnm_y = 0
elsif MOG::MPNMPS == 1
@mpnm_x = -300
@mpnm_y = 380
elsif MOG::MPNMPS == 2
@mpnm_x = 640
@mpnm_y = 0
else
@mpnm_x = 640
@mpnm_y = 380
end 
end
def mpnm_x
return @mpnm_x
end
def mpnm_y
return @mpnm_y
end
def fdtm
if @fdtm <= 0
@fdtm = 0
end
return @fdtm
end
end

class Game_Map
attr_reader   :map_id 
def mpname
$mpname = load_data("Data/MapInfos.rxdata")
$mpname[@map_id].name
end
end

class Window_Base < Window
def nd_mapic
mapic = RPG::Cache.picture("")     
end 
def draw_mpname(x,y)
mapic = RPG::Cache.picture("NazwaMapy") rescue nd_mapic   
cw = mapic.width 
ch = mapic.height
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x , y - ch + 65, mapic, src_rect)
self.contents.font.name = MOG::MPFONT
self.contents.font.size = 22
self.contents.font.bold = true
self.contents.font.color = Color.new(0,0,0,255)
self.contents.draw_text(x + 76, y + 27, 110, 32, $game_map.mpname.to_s,1)
self.contents.font.color = Color.new(255,255,255,255)
self.contents.draw_text(x + 75, y + 26, 110, 32, $game_map.mpname.to_s,1)
end
end

class Mpname < Window_Base
def initialize
super($game_system.mpnm_x, $game_system.mpnm_y, 250, 100)
self.contents = Bitmap.new(width - 32, height - 32)
self.opacity = 0
refresh
end
def refresh
self.contents.clear
draw_mpname(10,0)   
end
end

class Scene_Map
alias mog24_main main
def main
@mpnm = Mpname.new
@mpnm.contents_opacity = $game_system.fdtm
if $game_switches[MOG::WM_SWITCH_VIS_DISABLE] == false
@mpnm.visible = true
else
@mpnm.visible = false 
end 
mog24_main
@mpnm.dispose
end
alias mog24_update update
def update
mog24_update 
$game_system.mpnm_x = @mpnm.x
$game_system.mpnm_y = @mpnm.y
if $game_switches[MOG::WM_SWITCH_VIS_DISABLE] == true or $game_system.fdtm <= 0
@mpnm.visible = false 
else
@mpnm.visible = true
end
if MOG::MPNMPS == 0 or MOG::MPNMPS == 1
if @mpnm.x < 0
   @mpnm.x += 8
elsif @mpnm.x >= 0
   @mpnm.x = 0
end   
else
if @mpnm.x > 400
   @mpnm.x -= 8
elsif @mpnm.x <= 400
   @mpnm.x = 400
end     
end
@mpnm.contents_opacity = $game_system.fdtm
if MOG::MPNMFD == true
$game_system.fdtm -= 3
end
end
alias mog24_transfer_player transfer_player
def transfer_player
mog24_transfer_player
if MOG::MPNMPS == 0
$game_system.mpnm_x = -300
$game_system.mpnm_y = 0
elsif MOG::MPNMPS == 1
$game_system.mpnm_x = -300
$game_system.mpnm_y = 380
elsif MOG::MPNMPS == 2
$game_system.mpnm_x = 640
$game_system.mpnm_y = 0
else
$game_system.mpnm_x = 640
$game_system.mpnm_y = 380
end 
@mpnm.y = $game_system.mpnm_y
@mpnm.x = $game_system.mpnm_x
$game_system.fdtm = 255 + 40 * MOG::MPNMTM
@mpnm.refresh
end
end



Oto obrazek:
Spoiler:




Oto "skrin" ^@^
Spoiler:



That's all!

alintes - Czw 24 Gru, 2009 16:29

A można zamienic ten obrazek local na swoj inny ale w takiej samych pikselach
Czeliosss - Nie 14 Lut, 2010 20:09

Możesz, ale pamiętaj, że musi się tak samo nazywać jak podstawowy.
Pzdr

Darkpl3 - Sro 10 Mar, 2010 21:29

a jak zrobię że nazwa lokacji będzie wyświetlana np: na górnym środku
gdzie to zmienić??
sorka w tym jestem zielony

Melvin - Sro 10 Mar, 2010 21:33

Chyba tu: :mrgreen:
Cytat:
#Pozycja obrazka
# 0 = Górny lewy
# 1 = Dolny lewy
# 2 = Górny prawy
# 3 = Dolny prawy
MPNMPS = 2

Darkpl3 - Sob 13 Mar, 2010 09:04

a pokażesz screen z gotowym skryptem by był wyświetlany na górnym środku?
bo mi niewychodzi;(

Melvin - Sob 13 Mar, 2010 09:07

Ale co Ci nie wychodzi?

Mogę zrobić Ci demko...

Darkpl3 - Sob 13 Mar, 2010 09:57

to zrób/chodzi mi o to że wy skrypcie nie mogę wpisać tak bym miał lokacje na środku mapy {górnym środku}
Ayene - Sob 13 Mar, 2010 15:42

Sprawdź to:
Spoiler:

Kod:
# Nazwa Lokacji
# W pictures wrzuć obrazek o nazwie NazwaMapy, a jak nie wrzucisz to też
# będzie wporzo ^@^
#_______________________________________________________________________________
# By Moghunter edited by Lartarin the Super Świnka ^@^
#_______________________________________________________________________________
module MOG
#Font Name.
MPFONT = "Comic Sans MS"
#Zanik true/false
MPNMFD = true
#Zanik
MPNMTM = 10
#Pozycja obrazka
# 0 = Górny lewy
# 1 = Dolny lewy
# 2 = Górny prawy
# 3 = Dolny prawy
# 4 = Górny środek
MPNMPS = 4
# Nr przełącznika wyłączającego/włączającego nazwę lokacji
WM_SWITCH_VIS_DISABLE = 15
end
#_________________________________________________
$mogscript = {} if $mogscript == nil
$mogscript["Location_Name"] = true

class Game_System
attr_accessor :fdtm
attr_accessor :mpnm_x
attr_accessor :mpnm_y
alias mog24_initialize initialize
def initialize
mog24_initialize
@fdtm = 255 + 40 * MOG::MPNMTM
if MOG::MPNMPS == 0
@mpnm_x = -300
@mpnm_y = 0
elsif MOG::MPNMPS == 1
@mpnm_x = -300
@mpnm_y = 380
elsif MOG::MPNMPS == 2
@mpnm_x = 640
@mpnm_y = 0
elsif MOG::MPNMPS == 3
@mpnm_x = 640
@mpnm_y = 380
elsif MOG::MPNMPS == 4
@mpnm_x = 200
@mpnm_y = 0
else
@mpnm_x = 640
@mpnm_y = 380 
end
end
def mpnm_x
return @mpnm_x
end
def mpnm_y
return @mpnm_y
end
def fdtm
if @fdtm <= 0
@fdtm = 0
end
return @fdtm
end
end

class Game_Map
attr_reader   :map_id
def mpname
$mpname = load_data("Data/MapInfos.rxdata")
$mpname[@map_id].name
end
end

class Window_Base < Window
def nd_mapic
mapic = RPG::Cache.picture("")     
end
def draw_mpname(x,y)
mapic = RPG::Cache.picture("NazwaMapy") rescue nd_mapic   
cw = mapic.width
ch = mapic.height
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x , y - ch + 65, mapic, src_rect)
self.contents.font.name = MOG::MPFONT
self.contents.font.size = 22
self.contents.font.bold = true
self.contents.font.color = Color.new(0,0,0,255)
self.contents.draw_text(x + 76, y + 27, 110, 32, $game_map.mpname.to_s,1)
self.contents.font.color = Color.new(255,255,255,255)
self.contents.draw_text(x + 75, y + 26, 110, 32, $game_map.mpname.to_s,1)
end
end

class Mpname < Window_Base
def initialize
super($game_system.mpnm_x, $game_system.mpnm_y, 250, 100)
self.contents = Bitmap.new(width - 32, height - 32)
self.opacity = 0
refresh
end
def refresh
self.contents.clear
draw_mpname(10,0)   
end
end

class Scene_Map
alias mog24_main main
def main
@mpnm = Mpname.new
@mpnm.contents_opacity = $game_system.fdtm
if $game_switches[MOG::WM_SWITCH_VIS_DISABLE] == false
@mpnm.visible = true
else
@mpnm.visible = false
end
mog24_main
@mpnm.dispose
end
alias mog24_update update
def update
mog24_update
$game_system.mpnm_x = @mpnm.x
$game_system.mpnm_y = @mpnm.y
if $game_switches[MOG::WM_SWITCH_VIS_DISABLE] == true or $game_system.fdtm <= 0
@mpnm.visible = false
else
@mpnm.visible = true
end
if MOG::MPNMPS == 0 or MOG::MPNMPS == 1
  if @mpnm.x < 0
     @mpnm.x += 8
  elsif @mpnm.x >= 0
     @mpnm.x = 0
   end   
 elsif MOG::MPNMPS == 4
   @mpnm.x = 200
else
if @mpnm.x > 400
   @mpnm.x -= 8
elsif @mpnm.x <= 400
   @mpnm.x = 400
end     
end
@mpnm.contents_opacity = $game_system.fdtm
if MOG::MPNMFD == true
$game_system.fdtm -= 3
end
end
alias mog24_transfer_player transfer_player
def transfer_player
mog24_transfer_player
if MOG::MPNMPS == 0
$game_system.mpnm_x = -300
$game_system.mpnm_y = 0
elsif MOG::MPNMPS == 1
$game_system.mpnm_x = -300
$game_system.mpnm_y = 380
elsif MOG::MPNMPS == 2
$game_system.mpnm_x = 640
$game_system.mpnm_y = 0
elsif MOG::MPNMPS == 3
$game_system.mpnm_x = 640
$game_system.mpnm_y = 380
elsif MOG::MPNMPS == 4
$game_system.mpnm_x = 200
$game_system.mpnm_y = 0
else
$game_system.mpnm_x = 640
$game_system.mpnm_y = 380
end
@mpnm.y = $game_system.mpnm_y
@mpnm.x = $game_system.mpnm_x
$game_system.fdtm = 255 + 40 * MOG::MPNMTM
@mpnm.refresh
end
end


Darkpl3 - Sob 13 Mar, 2010 17:15

Ayane jest na górnym środku dzięki za pomoc
AdalkoX - Sob 19 Cze, 2010 17:13

A czy jak się zmieni linijkę
Kod:
#Font Name.
MPFONT = "Comic Sans MS"


Na np.

Kod:
#Font Name.
MPFONT = "Arial"


To skrypt też będzie działał poprawnie ?

Krashai - Pon 21 Cze, 2010 14:51

Prawdopodobnie tak. To tylko czcionka. Ale sprawdź sam.
Izaya - Sro 23 Cze, 2010 14:29

AdalkoX, pewnie że będzie działał.
Ale pamiętaj, niektóre czcionki nie wchodzą.
Możesz też dodać swoją własną. :-)

rachwalski - Sob 30 Paź, 2010 21:02

do jakiego skryptu? :roll: :?:
rpgmigara - Pią 24 Gru, 2010 14:23

No mi pomogło działa!
David - Wto 28 Gru, 2010 17:10

rachwalski napisał/a:
do jakiego skryptu? :roll: :?:


Mam wrażenie że (chyba) do skryptu lokacji :shock:

Lord Voldemort - Sob 08 Sty, 2011 20:12

Nie działają mi zapisy, wyskakuje error, a do tego jedna z moich lokacji nazywa sie Zamek zabójców - kwatery główne, a wyświetla się tylko mocno ściśniete Zamekzabójców-kw
Feniks - Nie 09 Sty, 2011 12:57

Lord Voldemort, bo napis jest za długi i się nie mieści, dlatego ci ucina nazwę.
HerosNiebios20 - Nie 30 Sty, 2011 16:47
Temat postu: Super
Dałem sam skrypt bez obrazka i też działa.Super dzięki.
Lord Voldemort - Sob 12 Mar, 2011 08:26

Można jakoś zrobić, żeby tak nie przyciaśniało nazwy? Bo nie można w ogóle tego rozczytać u mnie.
Dżoj - Sob 12 Mar, 2011 16:25

Można:
Zmień nazwy na krótsze

aVeKovi - Sro 27 Lip, 2011 13:38

wielkie dzięki działa jak trzeba xd fajny on ;]
noriaki014 - Sob 13 Sie, 2011 17:03

jak zrobic zeby byla nazwa lokacji
noriaki014 - Sob 13 Sie, 2011 17:05

daj ktos skrypt (ktos komu dziala) ze wszystkimi nazwami jakie macie wpisan lub demo prosze
Feniks - Sob 13 Sie, 2011 17:31

O co ci chodzi? Przecież nazwa lokacji się wyświetla, jeśli masz podpisaną mapę...
Danbo - Sro 26 Paź, 2011 19:25

Mi niestety skrypt nie działa. Wyświetla się Script '' line91 Name Error ocured.
Co mam zrobić by działało?

P.S Sorki, że odkopuje ten temat ale poszukuje pomocy.

PaayJer - Sro 26 Paź, 2011 19:58

Co masz w linijce 91? Chociarz to chyba nie to...
Melvin - Sro 26 Paź, 2011 20:51

Danbo, jaką masz nazwę mapy? Być może złą. Nie wiem. Wszystko działa.
Amadiziom6 - Wto 01 Lis, 2011 13:16

Czeliosss napisał/a:
Możesz, ale pamiętaj, że musi się tak samo nazywać jak podstawowy.
Pzdr

Nie trzeba wystarczy zminić mapic = RPG::Cache.picture("NazwaMapy") rescue nd_mapic
Nawa mapy na własną

thezorro134 - Pią 25 Lis, 2011 15:58
Temat postu: Nazwa Lokacji
Czy w tym skrypcie jest mozliwosc aby nazwe lokacji pokazywano przez dluzszy czas?
tracersgta - Pią 25 Lis, 2011 17:05

W konfiguracji jest opisane... Zmień "zanik" z true na false, lub jeżeli ma znikać, to ma być true i ustaw poniżej liczbę większą niż 10... Np. 100
rokenzo - Sob 10 Gru, 2011 20:32

A jak dodac to do gry
plis pomocy


Powered by phpBB modified by Przemo © 2003 phpBB Group