Jump to content
Rpg²S Forum

Blocca Comandi Giocatore


Wrathrook
 Share

Recommended Posts

Blocca Comandi Giocatore

Descrizione

 

Uno script ispirato da quello di Morshudiego per VX. Permette di bloccare movimento e tasto azione del player.

 

Autore

 

Wrathrook

 

Changelog

 

*** Versione 1 ***

* 1.00.4

- Rimozione feature "Disattiva Menu"

* 1.00.1 - 1.00.3

- Miglioramenti struttura codice

* 1.00.0

- Creazione Script

 

Istruzioni per l'uso

 

Quando volete bloccare il player dovete impostare su ON lo switch da voi

scelto nella configurazione. Per sbloccarlo basterà impostare lo switch su

OFF.

 

 

=begin

 

Titolo: Blocca Comandi Giocatore

Autore: Wrathrook

Ispirato da un lavoro di Morshudiego.

Versione: 1.00.4

Funzione: Bloccare i comandi del giocatore tramite uno switch.

Ringraziamenti: kingartur2, Keroro, giver per le correzioni,

 

Installazione:

- Inserire lo script sotto Materials;

- Configurare lo script nello spazio Configurazione.

 

Istruzioni per l'uso:

Quando volete bloccare il player dovete impostare su ON lo switch da voi

scelto nella configurazione. Per sbloccarlo basterà impostare lo switch su

OFF.

 

=end

 

module Fng; module FreezePlayer

# CONFIGURAZIONE #

 

# Switch_Attivazione = n

# L'ID dello switch che bloccherà i comandi del giocatore.

# n = numero intero

# Se lo switch è ON, il giocatore non potrà muoversi e interagire.

# Se lo switch è OFF, il giocatore avrà i comandi invariati.

Switch_Attivazione = 1

 

# FINE CONFIGURAZIONE #

end; end

 

# Oltre questa linea vi è tutto il codice dello script.

# E' sconsigliato modificarne la struttura.

 

$fng_scripts = {} unless $fng_scripts

$fng_scripts["FreezePlayer"] == true

 

class Game_Player < Game_Character

alias fng_movable? movable?

def movable?

return false if $game_switches[Fng::FreezePlayer::Switch_Attivazione]

fng_movable?

end

end

 

 

Bugs e Conflitti Noti

N/D

 

Altri Dettagli

 

N/D
Edited by Wrathrook
Link to comment
Share on other sites

Wow lungo, credevo fosse molto più semplice bloccarlo! XD Sempre utile comunque visto che molti chiedono come fare! ^ ^

(\_/)
(^ ^) <----coniglietto rosso, me!
(> <)


Il mio Tumblr dove seguire i miei progetti, i progetti della Reverie : : Project ^ ^

http://i.imgur.com/KdUDtQt.png disponibile su Google Play, qui i dettagli! ^ ^

http://i.imgur.com/FwnGMI3.png completo! Giocabile online, qui i dettagli! ^ ^

REVERIE : : RENDEZVOUS (In allenamento per apprendere le buone arti prima di cominciarlo per bene ^ ^) Trovate i dettagli qui insieme alla mia intervista (non utilizzerò più rpgmaker) ^ ^

 

SUWOnzB.jpg 🖤
http://www.rpg2s.net/dax_games/r2s_regali2s.png E:3 http://www.rpg2s.net/dax_games/xmas/gifnatale123.gif
http://i.imgur.com/FfvHCGG.png by Testament (notare dettaglio in basso a destra)! E:3
http://i.imgur.com/MpaUphY.jpg by Idriu E:3

Membro Onorario, Ambasciatore dei Coniglietti (Membro n.44)

http://i.imgur.com/PgUqHPm.png
Ufficiale
"Ad opera della sua onestà e del suo completo appoggio alla causa dei Panda, Guardian Of Irael viene ufficialmente considerato un Membro portante del Partito, e Ambasciatore del suo Popolo presso di noi"


http://i.imgur.com/TbRr4iS.png<- Grazie Testament E:3
Ricorda...se rivolgi il tuo sguardo ^ ^ a Guardian anche Guardian volge il suo sguardo ^ ^ a te ^ ^
http://i.imgur.com/u8UJ4Vm.gifby Flame ^ ^
http://i.imgur.com/VbggEKS.gifhttp://i.imgur.com/2tJmjFJ.gifhttp://projectste.altervista.org/Our_Hero_adotta/ado2.png
Grazie Testament XD Fan n°1 ufficiale di PQ! :D

Viva
il Rhaxen! <- Folletto te lo avevo detto (fa pure rima) che non
avevo programmi di grafica per fare un banner su questo pc XD (ora ho di
nuovo il mio PC veramente :D)

Rosso Guardiano della
http://i.imgur.com/Os5rvhx.png

Rpg2s RPG BY FORUM:

Nome: Darth Reveal

 

PV totali 2
PA totali 16

Descrizione: ragazzo dai lunghi capelli rossi ed occhi dello stesso colore. Indossa una elegante giacca rossa sopra ad una maglietta nera. Porta pantaloni rossi larghi, una cintura nera e degli stivali dello stesso colore. E' solito trasportare lo spadone dietro la schiena in un fodero apposito. Ha un pendente al collo e tiene ben legato un pezzo di stoffa (che gli sta particolarmente a cuore) intorno al braccio sinistro sotto la giacca, copre una cicatrice.
Bozze vesti non definitive qui.

Equipaggiamento:
Indossa:
60$ e 59$ divisi in due tasche interne
Levaitan

Spada a due mani elsa lunga

Guanti del Defender (2PA)
Anello del linguaggio animale (diventato del Richiamo)

Scrinieri da lanciere (2 PA)

Elmo del Leone (5 PA)

Corazza del Leone in Ferro Corrazzato (7 PA)

ZAINO (20) contenente:
Portamonete in pelle di cinghiale contenente: 100$
Scatola Sanitaria Sigillata (può contenere e tenere al sicuro fino a 4 oggetti curativi) (contiene Benda di pronto soccorso x3, Pozione di cura)
Corda
Bottiglia di idromele
Forma di formaggio
Torcia (serve ad illuminare, dura tre settori)

Fiasca di ceramica con Giglio Amaro (Dona +1PN e Velocità all'utilizzatore)
Ampolla Bianca

Semi di Balissa

 

CAVALLO NORMALE + SELLA (30 +2 armi) contentente:
66$
Benda di pronto soccorso x3
Spada a due mani

Fagotto per Adara (fazzoletto ricamato)


 

Link to comment
Share on other sites

mmm no guardian credo il problema sia che non ha utilizzato gli alias ed è andato in metodi che vengono richiamati da altri metodi, in pratica non ha bloccato la cosa all'origine ma è andato a tappare più in là. Grossomodo aliasando e scrivendo nei metodi giusti il codice all'incirca dovrebbe essere questo:

 

module Fng; module FreezePlayer
 Switch_Attivazione = 6
 Disattiva_Menu = true
end; end
class Game_Player < Game_Character
 alias fnusdfjdsiu passable?
 def passable?(x, y, d)
   return false if $game_switches[Fng::FreezePlayer::Switch_Attivazione]
   fnusdfjdsiu(x, y, d)
 end
 alias fhushdfudsh check_action_event
 def check_action_event
   return false if $game_switches[Fng::FreezePlayer::Switch_Attivazione]
   fhushdfudsh
 end
end
class Scene_Map < Scene_Base
 include Fng::FreezePlayer
 alias fnhdsufhsu update_call_menu
 def update_call_menu
   if $game_switches[switch_Attivazione] and Disattiva_Menu
     @menu_calling = false
     return
   end
   fnhdsufhsu
 end
end

Per qualsiasi motivo non aprite questo spoiler.

 

 

Ho detto di non aprirlo !

 

 

Se lo apri ancora esplode il mondo.

 

 

Aaaaaa è un vizio.

 

 

Contento? Il mondo è esploso, sono tutti morti

per colpa della tua curiosità .

 

 

Vuoi che ti venga anche il morbillo, la varicella e l'AIDS???

 

 

O bravo ora sei un malato terminale e nessuno

ti puo curare, sono tutti morti !

 

 

Se clicchi ancora una volta il PC esplode.

 

 

E dai smettila !!

 

Uff!! Hai cliccato tante volte che ho dovuto sostituirlo con un codebox.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

http://s8.postimg.org/yntv9nxld/Banner.png

http://img204.imageshack.us/img204/8039/sccontest3octpl3.gif

Link to comment
Share on other sites

Tranquillo io all'inizio riscrivevo intere classi inutilmente XD.

L'importante quando si modifica è sempre andare all'origine e trovare un sotterfugio per non riscrivere tutto.

Per qualsiasi motivo non aprite questo spoiler.

 

 

Ho detto di non aprirlo !

 

 

Se lo apri ancora esplode il mondo.

 

 

Aaaaaa è un vizio.

 

 

Contento? Il mondo è esploso, sono tutti morti

per colpa della tua curiosità .

 

 

Vuoi che ti venga anche il morbillo, la varicella e l'AIDS???

 

 

O bravo ora sei un malato terminale e nessuno

ti puo curare, sono tutti morti !

 

 

Se clicchi ancora una volta il PC esplode.

 

 

E dai smettila !!

 

Uff!! Hai cliccato tante volte che ho dovuto sostituirlo con un codebox.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

http://s8.postimg.org/yntv9nxld/Banner.png

http://img204.imageshack.us/img204/8039/sccontest3octpl3.gif

Link to comment
Share on other sites

Per bloccare il movimento e l'attivazione di eventi (sia a contatto che su tasto azione) basta che movable? restituisca false

Questa informazione la si ricava esaminando move_by_input e update_nonmoving, se si è miscredenti basta che facciate un test ^-^.

 

Per rimuovere il menù mi sento male a modificare quando esiste già l'interruttore $game_system.menu_disabled=true che disabilita il menù.

 

Se lo usiamo però non possiamo attivare il sistema da switch ma è necessario scrivere un metodo (se lasciassimo l'attivazione da switch dovremmo mettere un processo parallelo = +lag).

 

Propongo qui una versione, adattata allo stile di WrathRook, del codice che uso per il mio bs su mappa :)

 

module FreezePlayer
 Switch = 10
 def self.freeze
$game_switches[FreezePlayer::Switch] = true
$game_system.menu_disabled = true
 end
 def self.unfreeze
$game_switches[FreezePlayer::Switch] = false
$game_system.menu_disabled = false
 end
end

class Game_Player < Game_Character
 alias my_player_not_movable? movable?
 def movable?
!$game_switches[FreezePlayer::Switch] && my_player_not_movable?
 end
end

Per bloccare il personaggio chiamo in un evento

FreezePlayer.freeze

Per sbloccarlo:

FreezePlayer.unfreeze

 

Anche se mi piacerebbe che da uno script così il player finisse in posa da break dance :s

Edited by Keroro

I Miei Script:
Salva Schermata (3 Aprile 2012)
Attacco Personalizzabile (2 Aprile 2012)
Keyboard Input (Porting) (17 Marzo 2012)
Continua...

Link to comment
Share on other sites

scusa keroro ma $game_system.menu_disabled non è quello usato negli eventi?

In questo modo poi si ci ritrova sballati se si disattiva il menu da eventi e poi si usa quel comando.

Per movable non ci avevo fatto caso. XD

Per qualsiasi motivo non aprite questo spoiler.

 

 

Ho detto di non aprirlo !

 

 

Se lo apri ancora esplode il mondo.

 

 

Aaaaaa è un vizio.

 

 

Contento? Il mondo è esploso, sono tutti morti

per colpa della tua curiosità .

 

 

Vuoi che ti venga anche il morbillo, la varicella e l'AIDS???

 

 

O bravo ora sei un malato terminale e nessuno

ti puo curare, sono tutti morti !

 

 

Se clicchi ancora una volta il PC esplode.

 

 

E dai smettila !!

 

Uff!! Hai cliccato tante volte che ho dovuto sostituirlo con un codebox.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

http://s8.postimg.org/yntv9nxld/Banner.png

http://img204.imageshack.us/img204/8039/sccontest3octpl3.gif

Link to comment
Share on other sites

Non vorrei dire una cazzata, anche vista l'ora, ma per ovviare all'inconveniente del menù, la versione di keroro si potrebbe modificare così . . .

module FreezePlayer
 Switch = 10
 def self.freeze
	$game_switches[FreezePlayer::Switch] = true
	@menu_disabled_flag = $game_system.menu_disabled
	$game_system.menu_disabled = true
 end
 def self.unfreeze
	$game_switches[FreezePlayer::Switch] = false
	$game_system.menu_disabled = @menu_disabled_flag
 end
end
class Game_Player < Game_Character
 alias my_player_not_movable? movable?
 def movable?
	!$game_switches[FreezePlayer::Switch] && my_player_not_movable?
 end
end

Edited by giver

 


SCRIPT RGSS (RPG Maker XP) VINTAGE LIBRARY [2018+]


Breaking (in ogni senso) News: "Treno deraglia per via del seno di Sakurai Aoi . . ." - Info nello spoiler !!

 


http://afantasymachine.altervista.org/_altervista_ht/NOOOOOOOOOilMIOtreninooooo_500.gif


Non riesco a smettere di essere affascinato da immagini come questa . . .

http://anime.vl-vostok.ru/art/photos2011/17/78049800/wall_VladAnime_WWA_1885-1680x1050.jpg


Alcuni wallpapers che faccio ruotare sul mio vecchio PC . . .


http://afantasymachine.altervista.org/_altervista_ht/gits_window.jpg

http://afantasymachine.altervista.org/_altervista_ht/madoka_group01.jpg
http://afantasymachine.altervista.org/_altervista_ht/arisu_picipici_01.jpg
http://afantasymachine.altervista.org/_altervista_ht/phantom_wp01_einzwei.jpg


La parte più spassosa della mia vita è quando gli altri cercano di spiegarmi i miei pensieri . . .


BBCode Testing


Typeface & Size



Link to comment
Share on other sites

Grazie a tutti delle correzioni, ho aggiornato lo script alla 1.00.3 rimuovendo parti inutili.

 

Per il menù però preferirei lasciarlo così, dando la possibilità all'utente di decidere se disabilitare il menù o meno quando si blocca il personaggio.

Link to comment
Share on other sites

In tal caso, io lascerei usare il comando-evento Abilita/Disabilita Menù appena prima di bloccare il player, allora, piuttosto che costringerlo a scegliere se il menù sia bloccato o meno per tutto il gioco ogni volta che si blocca il player . . .

 


SCRIPT RGSS (RPG Maker XP) VINTAGE LIBRARY [2018+]


Breaking (in ogni senso) News: "Treno deraglia per via del seno di Sakurai Aoi . . ." - Info nello spoiler !!

 


http://afantasymachine.altervista.org/_altervista_ht/NOOOOOOOOOilMIOtreninooooo_500.gif


Non riesco a smettere di essere affascinato da immagini come questa . . .

http://anime.vl-vostok.ru/art/photos2011/17/78049800/wall_VladAnime_WWA_1885-1680x1050.jpg


Alcuni wallpapers che faccio ruotare sul mio vecchio PC . . .


http://afantasymachine.altervista.org/_altervista_ht/gits_window.jpg

http://afantasymachine.altervista.org/_altervista_ht/madoka_group01.jpg
http://afantasymachine.altervista.org/_altervista_ht/arisu_picipici_01.jpg
http://afantasymachine.altervista.org/_altervista_ht/phantom_wp01_einzwei.jpg


La parte più spassosa della mia vita è quando gli altri cercano di spiegarmi i miei pensieri . . .


BBCode Testing


Typeface & Size



Link to comment
Share on other sites

coff, coff, non per niente ma come era scritto prima l'opzione disabilita menu funzionava.

Per qualsiasi motivo non aprite questo spoiler.

 

 

Ho detto di non aprirlo !

 

 

Se lo apri ancora esplode il mondo.

 

 

Aaaaaa è un vizio.

 

 

Contento? Il mondo è esploso, sono tutti morti

per colpa della tua curiosità .

 

 

Vuoi che ti venga anche il morbillo, la varicella e l'AIDS???

 

 

O bravo ora sei un malato terminale e nessuno

ti puo curare, sono tutti morti !

 

 

Se clicchi ancora una volta il PC esplode.

 

 

E dai smettila !!

 

Uff!! Hai cliccato tante volte che ho dovuto sostituirlo con un codebox.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

http://s8.postimg.org/yntv9nxld/Banner.png

http://img204.imageshack.us/img204/8039/sccontest3octpl3.gif

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...