Meta :: القطعة :: GTK :: Sprite

meta :: widget :: GTK :: Sprite هو وحدة بيرل للقيام Sprites C64 Style.
التحميل الان

Meta :: القطعة :: GTK :: Sprite الترتيب والملخص

الإعلانات

  • Rating:
  • رخصة:
  • Perl Artistic License
  • السعر:
  • FREE
  • اسم الناشر:
  • Jeremy Price
  • موقع ويب الناشر:
  • http://search.cpan.org/~jeprice/Meta-Widget-Gtk-Sprite-0.01/Sprite.pm

Meta :: القطعة :: GTK :: Sprite العلامات


Meta :: القطعة :: GTK :: Sprite وصف

Meta :: Widget :: GTK :: Sprite هو وحدة بيرل للقيام Sprites C64 Style. Meta :: Widget :: GTK :: Sprite هو وحدة بيرل للقيام SPRITES نمط C64.Synopsis استخدام GTK؛ استخدام جنوم. gnome init "test.pl"؛ استخدم Meta :: Widget :: GTK :: Sprite؛ بلدي $ mw = new gtk :: window ("toplevel")؛ بلدي ($ قماش) = جنوم :: قماش-> جديد ()؛ $ MW-> إضافة ($ قماش)؛ $ قماش-> عرض؛ بلدي CROOT = $ قماش-> الجذر؛ My $ Sprites = New Meta :: Widget :: GTK :: Sprite ($ كروت)؛ بلدي P1 $ = $ Sprites-> إنشاء ("./ player1.xpm"، 100، 0)؛ $ Sprites-> slide_to_time ($ p1،5000، 100، 100)؛ بلدي P2 $ = $ Sprites-> إنشاء ("./ player2.xpm"، 0، 0)؛ $ sprites-> slide_to_speed ($ p2،10، 100، 100)؛ $ Sprites-> set_collision_handler (bang)؛ $ MW-> عرض؛ GTK-> الرئيسية؛ Sub Bang {print "bang! n"؛ خروج؛ } Sprite هي وحدة نمطية لإعادة برمجة الرسومات البسيطة من C64 (نأمل بدون مكون Tookslikearse). يمكنك إعلان الصور لتكون "Sprites" على القماش، ثم تحريكها وتحطمها في بعضها البعض. Notethe Canvas هو كائن Gnome :: Canvas. يجب أن يكون لديك كائن GTK :: قماش Canvas قبل البدء Sprite.methodsnew meta :: Widget :: GTK :: Sprite ($ canvas_root)؛ الطريقة الجديدة تأخذ وسيطة واحدة، كائن جذر قماش للوحة التي تريد رسمها. يمكنك الحصول على جذر قماش من قماشك مثل هذا: بلدي CROT $ = $ Canvas-> Root؛ $ sprite_number = $ sprites-> إنشاء ("/ المسار / إلى / اسم الملف"، 10، 20)؛ سوف تحميل صورة الملف (الآن، فقط تنسيق XPM) من القرص وجعل العفريت منه. الأرقامين هي الموضع X و Y على قماش. $ sprites-> إظهار ($ sprite_number)؛ يجعل العفريت تظهر على العفصات canvas $ -> إخفاء ($ sprite_number)؛ جعل صورة العفريت تختفي من القماش. لاحظ أنه لا يزال بإمكانه تصطدم مع العفصات الأخرى. إذا كنت لا ترغب في ضرب أي شيء، فقم بإخراجها من الطريق أو تجاهلها في معالج الاصطدام الخاص بك. $ Sprites-> تدمير ($ sprite_number)؛ يدمر تماما العفريت. $ sprite-> manuction_to ($ sprite_number، 10، 20)؛ Teleports The Sprite اسمه في $ sprite_number إلى الموقف الوارد على الفور. وظائف Slide_to_xxx Slide_to_XXX. $ Sprites-> slide_to_time ($ sprite_number، $ time، 10، 20)؛ سيجعل سبريت $ sprite_number 'slide' slide 'عبر قماش في الموضع 10، 20. سيستغرق الأمر ثواني زمنية $ للقيام بذلك. سوف تظهر سرعات بطيئة متشنج. $ sprites-> slide_to_speed ($ sprite_number، سرعة $، 10، 20)؛ سوف "الشريحة" العفريت $ sprite_number إلى الموضع 10، 20. سوف تتحرك بسرعة من البكسلات سرعة دولار في الثانية . $ sprites-> pos ($ sprite_number)؛ إرجاع إحداثيات x و y من $ sprite_number $ Sprites-> السرعة ($ sprite_number، 5، 6)؛ يضع سرعة $ sprite_number. الأرقام هي س و ص بسرعة. والأرقام السالبة جعل الوراء الذهاب العفريت $ sprites-> set_collision_handler (collision_handler)؛ اسم وظيفة التي سيتم استدعاؤها عند تصادم اثنين من العفاريت. علما بأن نظام كشف التصادم هو كربي للغاية في الوقت الحالي. وتبين أنه من الصعب جدا اكتشاف بكفاءة سيتم استدعاء الدالة collisions.Your مثل هذا: collision_handler ($ sprite_number، $ sprite_number)؛ حيث اثنين من أرقام العفريت هما العفاريت التي اصطدمت. العفاريت متعددة الاصطدام سوف يسبب الكثير callbacks.Note تصادم معالج جيدا أنه إذا قمت بتعيين معالج الاصطدام سوف Sprite.pm تحقق كل شبح واحد لاصطدام كل حلقة الرسوم المتحركة. أنا لم أمثل هذا، لذلك ستلاحظ تباطؤ هائل كما يمكنك إضافة أكثر sprites.To التبديل اصطدام فحص الخروج، تعيين معالج لنديف: $ sprites-> set_collision_handler (نديف)؛ متطلبات: perl.


Meta :: القطعة :: GTK :: Sprite برامج ذات صلة