Isto é uma pré-visualização de um tema em Hitskin.com
Instalar o tema • Voltar para a ficha do tema
[KM] Scene_Login
+35
Adanrox
Utirra
BrunoFox
Komuro Takashi
KaiqueHunter
Blackraato
Nietore
Fabrizio
matheus180
wallace123
' Wwebr
Codecake
lucas-justin
Demon-eater
gabrielpedutti
Gabriel Lenz
ZeroXP
philippejugnet
Bender
Felix Blayder
Kuraudo
DarkRoot
JuanCollin
Jonny
Mario.Hacker
Faabinhuu ;
Valentine
emilyoly
joaovitor2763
SrºJokker
Hatsuki Morturo
lovins
LeonM²
DeaN
KaduMacedo
39 participantes
Aldeia RPG :: RPG Maker :: Rpg Maker XP :: Netplays :: Scripts para netplays
Página 1 de 7
Página 1 de 7 • 1, 2, 3, 4, 5, 6, 7
[KM] Scene_Login
[KM] Scene_Login
Eae pessoal, como devem ter visto no tópico do [KM] Window_Status vocês votaram e acabaram escolhendo uma tela de login, então hoje como já havia falado eu ia fazer ela.
Abaixo vocês podem ver o script, uma screenshot de como ficou e uma breve explicação sobre o que vocês podem modificar.
AVISO: Não fiz nenhuma demo porque eu não estava afim ;D e porque não achei necessário.
Instruções
Para que o script funcione corretamente você deve ir no script: [CONF] User_edits nas linhas 73, 74, 75, 76, 77 e alterar 5 linhas:- Código:
BORDA = Color.new(152,152,152)
COR1 = Color.new(152,152,152)
COR2 = Color.new(212,212,212)
COR3 = Color.new(202,202,202)
COR4 = Color.new(182,182,182)
- Código:
BORDA = Color.new(152,152,152, 0)
COR1 = Color.new(152,152,152, 0)
COR2 = Color.new(212,212,212, 0)
COR3 = Color.new(202,202,202, 0)
COR4 = Color.new(182,182,182, 0)
Acrescentar o ", 0" faz com que a opacidade seja nula, então poderemos deixar a tela de login com a aparência que quisermos.
AVISO: Essa alteração vai modificar TODAS as suas outras scenes que utilizem campos para escrever, botões ou algo do gênero.
Script
Não comentarei muito sobre o script pois não há muito o que falar, está tudo comentado dentro dele.
- Código:
#==============================================================================#
# » [KM] Scene_Login #
#==============================================================================#
# » Desenvolvido por Kadu Macedo #
# » Desenvolvido com base na Scene_Login do Marlos Gama #
# » Visite: www.aldeiarpgbr.forumeiros.com #
#==============================================================================#
module KDU
#Fundo da Scene (Deve estar dentro da pasta "Titles")
FUNDO_LOGIN = "KMscene_login"
#Mensagem de Servidor Online
SERVER_ON = "Servidor Ligado"
#Mensagem de Servidor Offline
SERVER_OFF = "Servidor Desligado"
#Botão de Login
BOT_LOGIN = " "
#Botão de Registrar
BOT_REGISTRO = " "
#Campo de Usuário
#Posição X
USER_X = 165
#Posição Y
USER_Y = 249
#Campo de Senha
#Posição X
PASS_X = 165
#Posição Y
PASS_Y = 277
#Botão Salvar Informações
#Posição X
SALV_X = 149
#Posição Y
SALV_Y = 298
#Mensagem de Salvar Informações
SALV_MSG = "Salvar Informações"
#Posição X da Mensagem
SMSG_X = 165
#Posição Y da Mensagem
SMSG_Y = 290
#Botão de Login
#Posição X
LOGIN_X = 295
#Posição Y
LOGIN_Y = 249
#Botão de Registro
#Posição X
REGISTRO_X = 295
#Posição Y
REGISTRO_Y = 275
#Status do Servidor
#Posição X
SERVER_X = 160
#Posição Y
SERVER_Y = 323
end
class Scene_Login
#--------------------------------------------------------------------------
# Main
#--------------------------------------------------------------------------
def main
@sprite = Sprite.new
@sprite.bitmap = RPG::Cache.title("KMscene_login.png")
@base_window = Window_Dummys5.new(0, 0, 640, 480)
@base_window.windowskin = RPG::Cache.windowskin("Blank")
@base_window.dragable = false
@window_erro = Window_Dummys.new(200,165,235,90)#Window_Dummys5.new(180,150,250,80)
@window_erro.z = 9999
@window_erro.visible = false
@window_erro.active = false
@convite_button1 = Button.new(@window_erro,@window_erro.width/3+12, 55, " Ok ") {@window_erro.visible = false; @window_erro.active = false}
@window_erro.dragable = false
@window_erro.closable = true
#@window_erro.set_modt("aaa",0, -3)
main_data
if $servidor_off == true
@base_window.set_text7(KDU::SERVER_OFF,KDU::SERVER_X, KDU::SERVER_Y)
else
Network::Main.retrieve_mod if $game_temp.motd.to_s == "" or $game_temp.motd.to_s == User_Edit::NOMOTD
@base_window.set_text7(KDU::SERVER_ON,KDU::SERVER_X, KDU::SERVER_Y)
end
@user_window = $user_window_text
@user_window.x = KDU::USER_X
@user_window.y = KDU::USER_Y
@user_window.active = true
@pass_window = $pass_window_text
@pass_window.x = KDU::PASS_X
@pass_window.y = KDU::PASS_Y
@register_button = Button3.new(@base_window,156,76+12+27+25-5,KDU::BOT_REGISTRO) {register}
@register_button.x = KDU::REGISTRO_X
@register_button.y = KDU::REGISTRO_Y
@base_window.set_text6(KDU::SALV_MSG,KDU::SMSG_X, KDU::SMSG_Y)
@mainlogin_ckh = Check_Box.new(@base_window,16,116-24+27-5)
@mainlogin_ckh.x = KDU::SALV_X
@mainlogin_ckh.y = KDU::SALV_Y
@tempo = 0
if @user_window.text != ""
ativar_ckh
@user_window.active = false
@pass_window.active = true
end
@login_button = Button3.new(@base_window,156,76+12+27-5,KDU::BOT_LOGIN) {entrando}
@login_button.x = KDU::LOGIN_X
@login_button.y = KDU::LOGIN_Y
plusx = (640/2 - @base_window.width/2) - 100
@password = []
@user_name = []
Graphics.transition
if $servidor_off == true
else
Network::Main.retrieve_version
end
loop do
Network::Base.update
update
if $scene != self
break if main_scenechange?
end
end
Graphics.freeze
@sprite.dispose
@window_erro.dispose
@base_window.dispose
@login_button.dispose
@mainlogin_ckh.dispose
end
#--------------------------------------------------------------------------
# Salvar Conta
#--------------------------------------------------------------------------
def main_data
if FileTest.exist?("Account.rxdata")
@dati = []
file = File.open("Account.rxdata", "rb")
@dati = Marshal.load(file)
file.close
@base_window.set_username = @dati[0]
@base_window.set_password = @dati[1]
end
end
def ativar_ckh
@mainlogin_ckh.value = true
end
def main_scenechange?
if $scene != self
if @mainlogin_ckh.checked
@dati = []
@dati[0] = @base_window.username
@dati[1] = @base_window.password
file = File.open("Account.rxdata", "wb")
Marshal.dump(@dati,file)
file.close
end
return true
end
return false
end
def username
return @base_window.username
end
#--------------------------------------------------------------------------
# Update
#--------------------------------------------------------------------------
def update
@base_window.update
@window_erro.update
@login_button.update
if Input.pressed(Input::Mouse_Left) and @user_window.in_area?
@user_window.active = true
@pass_window.active = false
@pass_window.refresh
return
elsif Input.pressed(Input::Mouse_Left) and @pass_window.in_area?
@user_window.active = false
@pass_window.active = true
@user_window.refresh
end
if Input.trigger?(Input::Tab) or Input.trigger?(Input::DN) and @user_window.active == true
@user_window.active = false
@pass_window.active = true
@user_window.refresh
elsif Input.trigger?(Input::Tab) or Input.trigger?(Input::UPs) and @user_window.active == false
@user_window.active = true
@pass_window.active = false
@pass_window.refresh
return
end
if Graphics.frame_count / Graphics.frame_rate != @total_sec
@tempo += 1
end
if @tempo == 4 * 10
$mouse_active = false
@tempo = 0
end
if @login_update
login
return
end
end
#--------------------------------------------------------------------------
# Set Status Text
#--------------------------------------------------------------------------
def set_status(status)
@base_window.contents.clear
@base_window.set_text2(User_Edit::LOGIN_TITLE,125, 0)
#@base_window.set_text2(status, 25, 150)
if status != "Conectando ao Servidor..."
#@window_erro.contents.clear
@window_erro.visible = true
@window_erro.active = true
@window_erro.set_modt(status,0, -3)
end
@base_window.set_text4(USUARIO_NOME,10, 10+27)
@base_window.set_text5(SENHA_NOME,10,35+27)
@base_window.set_text6(LEMBRAR_NOME,22,66+27-5)
if $servidor_off == true
@base_window.set_text7(KDU::SERVER_OFF,KDU::SERVER_X, KDU::SERVER_Y)
else
Network::Main.retrieve_mod if $game_temp.motd.to_s == "" or $game_temp.motd.to_s == User_Edit::NOMOTD
@base_window.set_text7(KDU::SERVER_ON,KDU::SERVER_X, KDU::SERVER_Y)
@base_window.set_modt("#{$game_temp.motd}",18, 2)
end
end
def entrando
return if $mouse_active == true
if $mouse_active != true
if $servidor_off == true
@base_window.contents.clear
@base_window.set_text2(User_Edit::LOGIN_TITLE,125, 0)
#@window_erro.contents.clear
@window_erro.visible = true
@window_erro.active = true
@window_erro.set_modt("O servidor está offline!",0, -3)
#@base_window.set_text2(" Usuário Incorreto ou Logado.", 25, 150)
@base_window.set_text7(KDU::SERVER_OFF,KDU::SERVER_X, KDU::SERVER_Y)
#$game_system.se_play($data_system.decision_se)
$mouse_active = true
else
@user_window.active = false
@pass_window.active = false
@login_update = true
login
#$game_system.se_play($data_system.decision_se)
$mouse_active = true
return true
end
end
end
def register
return if $mouse_active == true
if $mouse_active != true
if $servidor_off == true
@base_window.contents.clear
@base_window.set_text2(User_Edit::LOGIN_TITLE,125, 0)
#@window_erro.contents.clear
@window_erro.visible = true
@window_erro.active = true
@window_erro.set_modt("O servidor está offline!",0, -3)
#@base_window.set_text2(" Nome de usuário já existe.", 25, 150)
@base_window.set_text7(KDU::SERVER_OFF,KDU::SERVER_X, KDU::SERVER_Y)
#$game_system.se_play($data_system.decision_se)
$mouse_active = true
else
if @pass_window.text != "" && @user_window.text != ""
if Network::Main.user_exist?(@base_window.username) == true
@base_window.contents.clear
@base_window.set_text2(User_Edit::LOGIN_TITLE,125, 0)
#@window_erro.contents.clear
@window_erro.visible = true
@window_erro.active = true
@window_erro.set_modt(User_Edit::REGISTER_DENIED,0, -3)
#@base_window.set_text2(User_Edit::REGISTER_DENIED, 25, 150)
#$game_system.se_play($data_system.decision_se)
$mouse_active = true
if $servidor_off == true
@base_window.set_text7(KDU::SERVER_OFF,KDU::SERVER_X, KDU::SERVER_Y)
else
Network::Main.retrieve_mod if $game_temp.motd.to_s == "" or $game_temp.motd.to_s == User_Edit::NOMOTD
@base_window.set_text7(KDU::SERVER_ON,KDU::SERVER_X, KDU::SERVER_Y)
@base_window.set_modt("#{$game_temp.motd}",18, 2)
end
else
Network::Main.send_register(@base_window.username , @base_window.password)
Network::Main.send_login(@base_window.username , @base_window.password)
@base_window.contents.clear
@base_window.set_text2(User_Edit::LOGIN_TITLE,125, 0)
#@base_window.set_text2(User_Edit::REGISTERED, 25, 150)
@base_window.set_text4(USUARIO_NOME,10, 10+27)
@base_window.set_text5(SENHA_NOME,10,35+27)
@base_window.set_text6(LEMBRAR_NOME,22,66+27-5)
#$game_system.se_play($data_system.decision_se)
$mouse_active = true
if $servidor_off == true
@base_window.set_text7(KDU::SERVER_OFF,KDU::SERVER_X, KDU::SERVER_Y)
else
Network::Main.retrieve_mod if $game_temp.motd.to_s == "" or $game_temp.motd.to_s == User_Edit::NOMOTD
@base_window.set_text7(KDU::SERVER_ON,KDU::SERVER_X, KDU::SERVER_Y)
@base_window.set_modt("#{$game_temp.motd}",18, 2)
end
end
else
@base_window.contents.clear
@base_window.set_text2(User_Edit::LOGIN_TITLE,125, 0)
#@window_erro.contents.clear
@window_erro.visible = true
@window_erro.active = true
@window_erro.set_modt(User_Edit::REGISTER_ERROR,0, -3)
#@base_window.set_text2(User_Edit::REGISTER_ERROR, 25, 150)
@base_window.set_text4(USUARIO_NOME,10, 10+27)
@base_window.set_text5(SENHA_NOME,10,35+27)
@base_window.set_text6(LEMBRAR_NOME,22,66+27-5)
#$game_system.se_play($data_system.decision_se)
$mouse_active = true
if $servidor_off == true
@base_window.set_text7(KDU::SERVER_OFF,KDU::SERVER_X, KDU::SERVER_Y)
else
Network::Main.retrieve_mod if $game_temp.motd.to_s == "" or $game_temp.motd.to_s == User_Edit::NOMOTD
@base_window.set_text7(KDU::SERVER_ON,KDU::SERVER_X, KDU::SERVER_Y)
@base_window.set_modt("#{$game_temp.motd}",18, 2)
end
end
end
end
end
#--------------------------------------------------------------------------
# Login
#--------------------------------------------------------------------------
def login
return if not @login_update
if @pass_window.text != "" && @user_window.text != ""
Network::Main.send_login(@base_window.username , @base_window.password)
@base_window.contents.clear
@base_window.set_text2(User_Edit::LOGIN_TITLE,125, 0)
#@base_window.set_text2(User_Edit::LOGIN_STATUS, 25, 150)
if $servidor_off == true
@base_window.set_text7(KDU::SERVER_OFF,KDU::SERVER_X, KDU::SERVER_Y)
else
Network::Main.retrieve_mod if $game_temp.motd.to_s == "" or $game_temp.motd.to_s == User_Edit::NOMOTD
@base_window.set_text7(KDU::SERVER_ON,KDU::SERVER_X, KDU::SERVER_Y)
@base_window.set_modt("#{$game_temp.motd}",18, 2)
end
@login_update = false
@cursor_pos = 1
else
@base_window.contents.clear
@base_window.set_text2(User_Edit::LOGIN_TITLE,125, 0)
#@window_erro.contents.clear
@window_erro.visible = true
@window_erro.active = true
@window_erro.set_modt(User_Edit::LOGIN_FILLERROR,0, -3)
#@base_window.set_text2(User_Edit::LOGIN_FILLERROR, 25, 150)
if $servidor_off == true
@base_window.set_text7(KDU::SERVER_OFF,KDU::SERVER_X, KDU::SERVER_Y)
else
Network::Main.retrieve_mod if $game_temp.motd.to_s == "" or $game_temp.motd.to_s == User_Edit::NOMOTD
@base_window.set_text7(KDU::SERVER_ON,KDU::SERVER_X, KDU::SERVER_Y)
@base_window.set_modt("#{$game_temp.motd}",18, 2)
end
@login_update = false
@cursor_pos = 1
end
end
end
Como podem perceber no script, na parte onde teria escrito Login e Registro eu coloquei apenas um grande espaço vazio, fiz isso pois já tinha escrito o que teria nos botões na imagem de fundo, e a quantidade de espaços foi para definir o tamanho do botão.
Você deverá colocar essa imagem: [KM] Scene_Login - Imagem de Fundo dentro da pasta Titles do seu projeto.
Screenshot
Espero que gostem e utilizem, se tiverem alguma dúvida podem postar ou até mesmo me perguntar pelo msn: kdum4c3d0@hotmail.com
KM RGSS Scripts por Kadu Macedo are licensed under a
Creative Commons Atribuição-Uso Não-Comercial-Compartilhamento pela mesma Licença 2.5 Brasil License.
Última edição por KaduMacedo em Sex Ago 12, 2011 8:46 pm, editado 2 vez(es)
KaduMacedo- Doador
- Mensagens : 20
Créditos : 34
Re: [KM] Scene_Login
Caramba Primeiro a Posta ta muto masa cara muito foda 10+ por dia....
_________________
Dean, Programador Geral :)
Contato: Skype:matucarvalho e Facebook
The Enze - Vulzt
Shield Block
Contato: Skype:matucarvalho e Facebook
The Enze - Vulzt
Shield Block
Anti-Cheat para jogos de FPS, agora vou adaptar para jogos de RPG principalmente para o RMXP.
www.shieldblock.net
fb.com/shieldblockoficial
Re: [KM] Scene_Login
bah kra mt show mas bem que vc podia ter dado um jeito de colocar os botoes transparentes só para a scene login bom esta mt boa msm mas como faço para que nas outras scenes que usam botoes terem um fundo?
LeonM²- Lenda
- Mensagens : 1802
Créditos : 153
Re: [KM] Scene_Login
Caramba! Pow cara, assim vc quase me mata do coração, muito bom O.O +1credi
_________________
Re: [KM] Scene_Login
A scene login em si está muito bonita, mas utilizar imagens como base completa as vezes tem sua desvantagens, como nos botões, quando sobreponho o mouse sobre o botão, aparece uma tarja clara retangular, sendo que o botão é arredondado, mas tirando isso, ela está muito boa, mas eu estou com um erro aqui:
- Código:
@base_window.set_text4(USUARIO_NOME,10, 10+27)
_________________
Hatsuki Morturo- Experiente
- Mensagens : 401
Créditos : 50
xD
Nossa!
Muito bom mano!
Vc manda muito heim!
Mas tem um pequeno erro quando vai logar... pode me ajudar
Muito bom mano!
Vc manda muito heim!
Mas tem um pequeno erro quando vai logar... pode me ajudar
- Código:
@base_window.set_text4(USUARIO_NOME,10, 10+27)
_________________
Com um pouco de criatividade o BOM fica ainda MELHOR.
By: Ykky
By: Ykky
Parceiro...
- Spoiler:
SrºJokker- Experiente
- Mensagens : 591
Créditos : 234
Re: [KM] Scene_Login
Sinceramente, não gostei muito da scene em si,más teve um lado positivo, estudando o script,deu pra tirar umas ideias de como criar minha própria login, então +créd
_________________
Ser maker e ser capaz de dar vida a sua imaginação.
joaovitor2763- Membro de Honra
- Medalhas :
Mensagens : 645
Créditos : 137
Re: [KM] Scene_Login
Adorei a scene +1 Cred xD
_________________
- Pessoas que admiro:
- RD12 - Por ele sempre ajudar os outros e ser um cara mt foda.
Cidiomar - O melhor Scripter que conheço
Felix Blayder - The Best
emilyoly- Diva
- Mensagens : 526
Créditos : 83
Re: [KM] Scene_Login
Eu modifiquei, olha como ficou a minha:
https://2img.net/r/ihimg/photo/my-images/3/unled2copyl.png/
@edit
Tipo, voce subistituil a scene)login oririnal, ou criou um novo scipt?
https://2img.net/r/ihimg/photo/my-images/3/unled2copyl.png/
@edit
Ykkyto escreveu:Nossa!
Muito bom mano!
Vc manda muito heim!
Mas tem um pequeno erro quando vai logar... pode me ajudar
- Código:
@base_window.set_text4(USUARIO_NOME,10, 10+27)
Tipo, voce subistituil a scene)login oririnal, ou criou um novo scipt?
_________________
Re: [KM] Scene_Login
Noooooosssa! Muito bom cara
+ crédito
Você é fera em design, to precisando disso pra minha engine.
+ crédito
Você é fera em design, to precisando disso pra minha engine.
Página 1 de 7 • 1, 2, 3, 4, 5, 6, 7
Aldeia RPG :: RPG Maker :: Rpg Maker XP :: Netplays :: Scripts para netplays
Página 1 de 7
Permissões neste sub-fórum
Não podes responder a tópicos