SlideShare ist ein Scribd-Unternehmen logo
1 von 17
Introduction To
                            Greenfoot
                               Part-3


kakihijau.googlepages.com
Disclaimer
 This document is intended to give a beginner an introductory
  material for the Greenfoot system. Greenfoot is a software
  framework made by Poul Henriksen and Michael Koelling at
  University of Kent / Deakin University. More information can be
  found at http://www.greenfoot.org

 This document is available „AS IS“ free of charge for personal use
  and non-commercial redistribution. It may not be sold for profit or
  included in other packages which are sold for profit without written
  authorisation. This document is distributed in the hope that it will
  be useful, but WITHOUT ANY WARRANTY; your use of the
  document is at your sole risk. Reusing and modifying (part of) this
  document is allowed, as long as you state explicitly that your work is
  based on the original document produced by the copyright holder:
  Eueung Mulyana. The author can be contacted via
  eueung-[at]-yahoo.com (http://kakihijau.googlepages.com).


                                                     Introduction to Greenfoot              2
                                               Eueung Mulyana | kakihijau.googlepages.com
Purpose
 This is the second part of the document „Introduction to
  Greenfoot“ and focuses on two topics: modification and
  programming of the wombats scenario

 Part of the content of these slides is based on the
  Greenfoot Tutorial made by Michael Koelling,
  publicly accesible at the Greenfoot website,
  http://www.greenfoot.org




                                              Introduction to Greenfoot              3
                                        Eueung Mulyana | kakihijau.googlepages.com
Outline
 Changing the Behaviour
 Changing Representations
 Creating New Classes




                                    Introduction to Greenfoot              4
                              Eueung Mulyana | kakihijau.googlepages.com
Changing the Behaviour (1)
 We want to change the behaviour of Wombat objects :
  instead of always turning left, they shall be able to turn to
  other directions in a random way
 We will add an additional method, called turnRandom()
 Open the source code of the Wombat class, add the
  following codes

                                             Generate a random
                                             number between 0 and 3


 call turnLeft()
 turns times



                                               Introduction to Greenfoot              5
                                         Eueung Mulyana | kakihijau.googlepages.com
Changing the Behaviour (2)


                 if you find leaves, eat !

                 if you don‘t find leaves, but you
                 can move forward, then move!

                 if you don‘t find leaves and you
                 also cannot move, then turn to a
                 random direction!




                        Introduction to Greenfoot              6
                  Eueung Mulyana | kakihijau.googlepages.com
Changing the Behaviour (3)




                        Introduction to Greenfoot              7
                  Eueung Mulyana | kakihijau.googlepages.com
Changing Representations (1)
 Visual representation (image) of an object can be
  changed in two different ways
   – Changing the „class image“; in this way, all objects of the same
     class shall look the same (to the assigned class image)
   – Changing the image programmatically; in this way, objects of the
     same class might look different, depending on the
     implementation


 These two ways might be combined!




                                                   Introduction to Greenfoot              8
                                             Eueung Mulyana | kakihijau.googlepages.com
Changing Representations (2)




                         Introduction to Greenfoot              9
                   Eueung Mulyana | kakihijau.googlepages.com
Changing Representations (3)




                         Introduction to Greenfoot              10
                   Eueung Mulyana | kakihijau.googlepages.com
Changing Representations (4)




  the result of populate()       Additionally change the class image
after changin the class image   then add 2 objects after modification
                                               Introduction to Greenfoot              11
                                         Eueung Mulyana | kakihijau.googlepages.com
Changing Representations (5)




               to set the image of an object
                     programmatically




                                Introduction to Greenfoot              12
                          Eueung Mulyana | kakihijau.googlepages.com
Changing Representations (6)




                         Introduction to Greenfoot              13
                   Eueung Mulyana | kakihijau.googlepages.com
Creating New Classes (1)
 We could not only modify the                     class image for
                                                   the Rock class
  behaviour of objects, but also add a
  completely new type of objects i.e.
  create new classes
 Right-click the class Actor and
  choose item „New subclass ...“,
  enter the class name and select a
  class image in the dialog;
  Greenfoot will automatically
  generate your class !
 In this case we add a new class,
  called Rock. The image for this        images available in the wombats
  class is already available in the              scenario folder
  wombats scenario folder

                                               Introduction to Greenfoot              14
                                         Eueung Mulyana | kakihijau.googlepages.com
Creating New Classes (2)




                       Introduction to Greenfoot              15
                 Eueung Mulyana | kakihijau.googlepages.com
Creating New Classes (3)

 To stop wombats
  from walking
  through rocks ...


 check all Rock objects
 in front of you;
 if there is no Rock object,
 return true (i.e. okay it‘s
 clear!) , otherwise return
 false (i.e. you cannot move!)




                                       Introduction to Greenfoot              16
                                 Eueung Mulyana | kakihijau.googlepages.com
Creating New Classes (4)




                       Introduction to Greenfoot              17
                 Eueung Mulyana | kakihijau.googlepages.com

Weitere ähnliche Inhalte

Mehr von Eueung Mulyana

Mehr von Eueung Mulyana (20)

Open Source Networking Overview
Open Source Networking OverviewOpen Source Networking Overview
Open Source Networking Overview
 
ONOS SDN Controller - Clustering Tests & Experiments
ONOS SDN Controller - Clustering Tests & Experiments ONOS SDN Controller - Clustering Tests & Experiments
ONOS SDN Controller - Clustering Tests & Experiments
 
Open stack pike-devstack-tutorial
Open stack pike-devstack-tutorialOpen stack pike-devstack-tutorial
Open stack pike-devstack-tutorial
 
Basic onos-tutorial
Basic onos-tutorialBasic onos-tutorial
Basic onos-tutorial
 
ONOS SDN Controller - Introduction
ONOS SDN Controller - IntroductionONOS SDN Controller - Introduction
ONOS SDN Controller - Introduction
 
OpenDaylight SDN Controller - Introduction
OpenDaylight SDN Controller - IntroductionOpenDaylight SDN Controller - Introduction
OpenDaylight SDN Controller - Introduction
 
Mininet Basics
Mininet BasicsMininet Basics
Mininet Basics
 
Android Programming Basics
Android Programming BasicsAndroid Programming Basics
Android Programming Basics
 
Cloud Computing: Overview and Examples
Cloud Computing: Overview and ExamplesCloud Computing: Overview and Examples
Cloud Computing: Overview and Examples
 
selected input/output - sensors and actuators
selected input/output - sensors and actuatorsselected input/output - sensors and actuators
selected input/output - sensors and actuators
 
Connected Things, IoT and 5G
Connected Things, IoT and 5GConnected Things, IoT and 5G
Connected Things, IoT and 5G
 
Connectivity for Local Sensors and Actuators Using nRF24L01+
Connectivity for Local Sensors and Actuators Using nRF24L01+Connectivity for Local Sensors and Actuators Using nRF24L01+
Connectivity for Local Sensors and Actuators Using nRF24L01+
 
NodeMCU with Blynk and Firebase
NodeMCU with Blynk and FirebaseNodeMCU with Blynk and Firebase
NodeMCU with Blynk and Firebase
 
Trends and Enablers - Connected Services and Cloud Computing
Trends and Enablers  - Connected Services and Cloud ComputingTrends and Enablers  - Connected Services and Cloud Computing
Trends and Enablers - Connected Services and Cloud Computing
 
Digital Ecosystems - Connected Services and Cloud Computing
Digital Ecosystems - Connected Services and Cloud ComputingDigital Ecosystems - Connected Services and Cloud Computing
Digital Ecosystems - Connected Services and Cloud Computing
 
Services Convergence - Connected Services and Cloud Computing
Services Convergence - Connected Services and Cloud ComputingServices Convergence - Connected Services and Cloud Computing
Services Convergence - Connected Services and Cloud Computing
 
Models and Architecture - Connected Services and Cloud Computing
Models and Architecture - Connected Services and Cloud ComputingModels and Architecture - Connected Services and Cloud Computing
Models and Architecture - Connected Services and Cloud Computing
 
Introduction, Examples - Firebase
Introduction, Examples - Firebase Introduction, Examples - Firebase
Introduction, Examples - Firebase
 
Vue js and Vue Material
Vue js and Vue MaterialVue js and Vue Material
Vue js and Vue Material
 
React Example + Bootstrap
React Example + BootstrapReact Example + Bootstrap
React Example + Bootstrap
 

Kürzlich hochgeladen

The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
heathfieldcps1
 

Kürzlich hochgeladen (20)

General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
 
Class 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfClass 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdf
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
psychiatric nursing HISTORY COLLECTION .docx
psychiatric  nursing HISTORY  COLLECTION  .docxpsychiatric  nursing HISTORY  COLLECTION  .docx
psychiatric nursing HISTORY COLLECTION .docx
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 

Greenfoot Introduction (3)

  • 1. Introduction To Greenfoot Part-3 kakihijau.googlepages.com
  • 2. Disclaimer  This document is intended to give a beginner an introductory material for the Greenfoot system. Greenfoot is a software framework made by Poul Henriksen and Michael Koelling at University of Kent / Deakin University. More information can be found at http://www.greenfoot.org  This document is available „AS IS“ free of charge for personal use and non-commercial redistribution. It may not be sold for profit or included in other packages which are sold for profit without written authorisation. This document is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; your use of the document is at your sole risk. Reusing and modifying (part of) this document is allowed, as long as you state explicitly that your work is based on the original document produced by the copyright holder: Eueung Mulyana. The author can be contacted via eueung-[at]-yahoo.com (http://kakihijau.googlepages.com). Introduction to Greenfoot 2 Eueung Mulyana | kakihijau.googlepages.com
  • 3. Purpose  This is the second part of the document „Introduction to Greenfoot“ and focuses on two topics: modification and programming of the wombats scenario  Part of the content of these slides is based on the Greenfoot Tutorial made by Michael Koelling, publicly accesible at the Greenfoot website, http://www.greenfoot.org Introduction to Greenfoot 3 Eueung Mulyana | kakihijau.googlepages.com
  • 4. Outline  Changing the Behaviour  Changing Representations  Creating New Classes Introduction to Greenfoot 4 Eueung Mulyana | kakihijau.googlepages.com
  • 5. Changing the Behaviour (1)  We want to change the behaviour of Wombat objects : instead of always turning left, they shall be able to turn to other directions in a random way  We will add an additional method, called turnRandom()  Open the source code of the Wombat class, add the following codes Generate a random number between 0 and 3 call turnLeft() turns times Introduction to Greenfoot 5 Eueung Mulyana | kakihijau.googlepages.com
  • 6. Changing the Behaviour (2) if you find leaves, eat ! if you don‘t find leaves, but you can move forward, then move! if you don‘t find leaves and you also cannot move, then turn to a random direction! Introduction to Greenfoot 6 Eueung Mulyana | kakihijau.googlepages.com
  • 7. Changing the Behaviour (3) Introduction to Greenfoot 7 Eueung Mulyana | kakihijau.googlepages.com
  • 8. Changing Representations (1)  Visual representation (image) of an object can be changed in two different ways – Changing the „class image“; in this way, all objects of the same class shall look the same (to the assigned class image) – Changing the image programmatically; in this way, objects of the same class might look different, depending on the implementation  These two ways might be combined! Introduction to Greenfoot 8 Eueung Mulyana | kakihijau.googlepages.com
  • 9. Changing Representations (2) Introduction to Greenfoot 9 Eueung Mulyana | kakihijau.googlepages.com
  • 10. Changing Representations (3) Introduction to Greenfoot 10 Eueung Mulyana | kakihijau.googlepages.com
  • 11. Changing Representations (4) the result of populate() Additionally change the class image after changin the class image then add 2 objects after modification Introduction to Greenfoot 11 Eueung Mulyana | kakihijau.googlepages.com
  • 12. Changing Representations (5) to set the image of an object programmatically Introduction to Greenfoot 12 Eueung Mulyana | kakihijau.googlepages.com
  • 13. Changing Representations (6) Introduction to Greenfoot 13 Eueung Mulyana | kakihijau.googlepages.com
  • 14. Creating New Classes (1)  We could not only modify the class image for the Rock class behaviour of objects, but also add a completely new type of objects i.e. create new classes  Right-click the class Actor and choose item „New subclass ...“, enter the class name and select a class image in the dialog; Greenfoot will automatically generate your class !  In this case we add a new class, called Rock. The image for this images available in the wombats class is already available in the scenario folder wombats scenario folder Introduction to Greenfoot 14 Eueung Mulyana | kakihijau.googlepages.com
  • 15. Creating New Classes (2) Introduction to Greenfoot 15 Eueung Mulyana | kakihijau.googlepages.com
  • 16. Creating New Classes (3)  To stop wombats from walking through rocks ... check all Rock objects in front of you; if there is no Rock object, return true (i.e. okay it‘s clear!) , otherwise return false (i.e. you cannot move!) Introduction to Greenfoot 16 Eueung Mulyana | kakihijau.googlepages.com
  • 17. Creating New Classes (4) Introduction to Greenfoot 17 Eueung Mulyana | kakihijau.googlepages.com