| Meta :: Widget :: gtk :: sprite Meta :: Widget :: gtk :: sprite é um módulo Perl para fazer sprites de estilo C64. |
Baixe Agora |
Meta :: Widget :: gtk :: sprite Classificação e resumo
- Licença:
- Perl Artistic License
- Nome do editor:
- Jeremy Price
- Site do editor:
- http://search.cpan.org/~jeprice/Meta-Widget-Gtk-Sprite-0.01/Sprite.pm
Meta :: Widget :: gtk :: sprite Tag
Meta :: Widget :: gtk :: sprite Descrição
Meta :: Widget :: GTK :: Sprite é um módulo Perl para fazer sprites de estilo C64. Meta :: widget :: gtk :: sprite é um módulo perl para fazer sprites estilo C64.synopsis use gtk; Use o gnome; init gnome "test.pl"; Use meta :: Widget :: gtk :: sprite; Meu $ MW = New Gtk :: Window ("Toplevel"); Meu ($ Canvas) = Gnome :: Canvas-> Novo (); $ mw-> Adicionar (lona $); $ canas-> show; Minha $ Croot = $ Canvas-> raiz; Meu $ Sprites = New Meta :: Widget :: GTK :: Sprite ($ Croot); meu $ p1 = $ sprites-> criar ("./ player1.xpm", 100, 0); $ sprites-> slide_to_time ($ p1.5000, 100, 100); meu $ p2 = $ sprites-> criar ("./ player2.xpm", 0, 0); $ sprites-> slide_to_speed ($ P2,110, 100, 100); $ sprites-> set_collision_handler (Bang); $ mw-> show; Gtk-> principal; Sub Bang {Imprimir "Bang! N"; saída; } Sprite é um módulo para trazer de volta a programação de gráficos simples do C64 (esperançosamente sem o componente Looklikearse). Você pode declarar fotos para ser 'sprites' na tela e movê-los e colá-los em um ao outro. Na tela é o objeto GNOME :: Canvas. Você tem que ter um objeto GTK :: Antes de iniciar o sprite.methodsnew meta :: Widget :: gtk :: sprite ($ canas_root); o novo método leva um argumento, o objeto raiz de lona para a tela que você deseja desenhar. Você pode obter a raiz da tela da sua tela assim: meu $ Croot = $ Canvas-> raiz; $ sprite_number = $ sprites-> criar ("/ caminho / para / filename", 10, 20); criará uma imagem Arquivo (agora, apenas formato XPM) do disco e faça um sprite fora dele. Os dois números são a posição X e Y na tela. $ Sprites-> show ($ sprite_number_number); faz o sprite aparecer na tela $ sprites-> esconder ($ sprite_number); fazer o sprite imagem desaparecer da tela. Note que ainda pode colidir com outros sprites. Se você não quer que ele acerte qualquer coisa, mova-a para fora do caminho ou ignore-a em seu próprio manipulador de colisão. $ Sprites-> destruir ($ sprite_number); destrói completamente um sprite. $ Sprites-> mover_to ($ sprite_number_ 10, 20); Teleporta o sprite nomeado em $ sprite_number para a posição dada imediatamente. Contraste slide_to_xxx funções. $ Sprites-> slide_to_time ($ sprite_number_number, $ tempo, 10, 20); fará o sprite $ sprite_number 'slide' através da tela para a posição 10, 20. Ele vai demorar alguns segundos para fazê-lo. Velocidades lentas aparecerão jerky. $ Sprites-> slide_to_speed ($ sprite_number, $ velocidade, 10, 20); vai 'deslizar' o sprite $ sprite_number para a posição 10, 20. Ele se moverá a uma velocidade de pixels de $ velocidade por segundo . $ sprites-> pos ($ sprite_number_number); retorna as coordenadas x e y de $ sprite_number $ sprites-> velocidade ($ sprite_number_number, 5, 6); define a velocidade de $ sprite_number. Os números são as velocidades X e Y. Números negativos farão o sprite ir para trás. $ Sprites-> set_collision_handler (collision_handler); nomeie uma função que será chamada quando dois sprites colidirem. Observe que o sistema de detecção de colisão é extremamente ruim agora. Acontece que é muito difícil detectar eficientemente colisões. Sua função será chamada como esta: Collision_Handler ($ Sprite_number, $ sprite_number); onde os dois números de sprite são os dois sprites que colidiram. Múltiplos sprites Colidoncling farão com que muitos callbacks de manipulador de colisão.Nota bem que se você definir o manipulador de colisão Sprite.PM verificará todos os primeiros sprite para colisões todos os loop de animação. Eu não otimizei isso, então você notará uma desaceleração massiva à medida que adicionar mais sprites.Para alternar colisões de verificação, definir o manipulador para UNDEF: $ sprites-> set_collision_handler (Redef); Requisitos: · Perl.
Meta :: Widget :: gtk :: sprite Software Relacionado