Comp1447 introduction to oo programming assignment

Assignment Help Other Subject
Reference no: EM132560824

Introduction

This document describes the detailed requirements for the second semester module project. The assignment consists of a series of tasks of varying complexity. All the tasks available can contribute to the development of an upgrade to the PetAFish simulation:

Assessment Structure

Assignment 3 is worth 50% of the module grade and is structured with a range of increasingly challenging tasks. You are required to work individually and complete as many of the task elements as possible.

10% of this assignment is for the Learning Journal to be completed in addition to the submitted project - see details below.

How to pass this Assessment:
• Come to class, get logical support from your tutors, we can't give you answers but we can push you in the right direction.
• Google it! You won't find the answers to everything, but small syntax issues or snippets of code that might make life easier will be out there waiting for you! Being able to google your way past a problem is a key skill!
• Keep trying, even if it doesn't work right away and gets very frustrating, this is how it feels to learn how to program, just keep trying!
• Read all instructions. There are a lot of hints and tips in all the text presented here.
Good code practices will be graded, these include:
• Good commenting and indentation
• Appropriate Naming Conventions
• Working code based on suggested approaches
• Using appropriate methods, parameters, conditional statements and iterations
As a general rule, you will not earn any credits for a given task if the code that you produce cannot be run and tested, producing visible results coherent with the requirements. Hence, code that can be run and tested can earn you credits even if it has bugs or is incomplete, but writing new code that does not work at all will not be as helpful!
For each task you will actually earn points depending on: i) how you fulfil the specific task requirements; ii) the quality of your solution, in relation to the assessment criteria for the task.

The Task
You are tasked with creating a Piranha Battle simulation as an upgrade for the FishORama work you have been involved in. A sample video (of the final Challenge solution) is available on Blackboard as a guide - your solution does not need to be identical, as long as it meets the brief below.

CORE level (40% of assignment)
Set up the battle simulation:

1. Create a Piranha class based on the example OrangeFish class in the FishORama project.

2. Create 6 piranha fish, store them in an Array or a list as you created them, if this is a challenge, you can create a variable for each Piranha, but won't receive full marks for this step. When creating the piranha, consider the following:
a. Continue to pass the string and tokenManager object as parameters to the Piranha Constructor
b. Also pass two additional numbers, the first representing the fish number (from 1-3, outlined in step 6 below) and the second representing a team number (either team 1, or team 2 with 3 fish being on each team).
c. These numbers (from part b) should be stored in relevant variables in the Piranha class

3. Place 3 piranhas on the left side of the screen and 3 piranhas on the right side of the screen. To do this, it is expected that the 3 piranhas on the left are placed one under the other on the same X coordinate with a uniform distance between them on Y.
a. The first piranha on the left should be placed -300 on X and +150 on Y
b. Two subsequent piranhas should be placed 150 pixels below the previous fish on the Y axis
c. The first piranha on the right should be placed +300 on X and +150 on Y
d. Two subsequent piranhas should be placed 150 pixels below the previous fish on the Y axis

4. For full marks, to place the fish as mentioned in step 2, you can use either two separate for loops (one starting at 0 and the other at 3) or two nested for loops both starting at 0 and running 3 times each.

5. Make all the Piranhas face inwards to face the other team ready for battle!

6. Have each piranha store a number from 1-3 so the piranha on the left should be numbered 1, 2 and 3 respectively from top to bottom, and the piranha on the right should be numbered 1, 2 and 3 as well. These numbers will be passed to the Piranha constructor from Simulation as mentioned in step 2.

7. Make the Piranha swim up and down 50 pixels above and below starting position (100 pixels in total). Note, a later task is to make the Piranha swim in circles, which replaces this up and down movement (and gains the credit for this task)

8. Have the chicken leg be placed at random times in the centre of the screen, but only when it hasn't already been placed (so the program will not try to place the chicken leg if it is already there).
Code for placement of the leg already exists, so it should simply be a case of repurposing this code. Read all the hints below to get this done!

a. The Kernel in the FishORamaEngineLibrary already has functionality to place the leg

b. We can repurpose this for our needs, copy the code from the Kernel's Update method (// Place a new chicken leg at the position of the mouse) and put it in a new method called PlaceLeg() which can be placed in the Simulation.

c. Remove all the code related to mouse clicks but keep/add the code that checks if the tokenManager.ChickenLeg variable is null

d. Have the leg position itself at the centre of the screen instead of based on the mouse position

e. Instead of using a mouse click to add the ChickenLeg (as happens in Kernel), you can do random number generation in Simulation to randomly call the PlaceLeg method you just created if a certain number gets generated. Obviously, this must be in the update so it continues to place the ChickenLeg whilst the simulation is running.

Attachment:- Introduction to OO Programming.rar

Reference no: EM132560824

Questions Cloud

Discuss alex travelling expenses : Discuss whether Alex's travelling expenses between the ABC Engineering workshop and his homebased catering business is an allowable deduction.
Find and discuss casinos prepaid rent is considered : Find and discuss whether casinos prepaid rent is considered a revenue expense or a capital expense, With reference to relevant legislation and case law
Make the General Journal entry for July : Alpha Company sold goods to customers who used Under-the-Hill bank credit cards. Make the General Journal entry (without explanation) for July 8, 2016
What is the break-even level in tires : HASF Tires, Inc. sells tires to service stations for an average of $45 each. What is break-even level in tires, assuming variable costs increase by 30 percent
Comp1447 introduction to oo programming assignment : COMP1447 Introduction to OO Programming Assignment Help and Solution - Create a Piranha class based on the example OrangeFish class in the FishORama project
Compute the amount of cost of goods sold : Compute the amount of cost of goods sold to be reported in the consolidated income statement for 2017 relating to the relevant intra-group sales
What is the interest rate : A tire company advertises a deal of low monthly payments of $45.00 per month, What is the interest rate, assuming simple interest is applied
Machine learning and deep learning : Discuss the process that generates the power of AI and discuss the differences between machine learning and deep learning.
Prepare necessary journal entries to account for income tax : Deferred tax liability $18,000 Deferred tax asset 15,000. Prepare necessary journal entries to account for income tax assuming recognition criteria satisfied

Reviews

Write a Review

Other Subject Questions & Answers

  Cross-cultural opportunities and conflicts in canada

Short Paper on Cross-cultural Opportunities and Conflicts in Canada.

  Sociology theory questions

Sociology are very fundamental in nature. Role strain and role constraint speak about the duties and responsibilities of the roles of people in society or in a group. A short theory about Darwin and Moths is also answered.

  A book review on unfaithful angels

This review will help the reader understand the social work profession through different concepts giving the glimpse of why the social work profession might have drifted away from its original purpose of serving the poor.

  Disorder paper: schizophrenia

Schizophrenia does not really have just one single cause. It is a possibility that this disorder could be inherited but not all doctors are sure.

  Individual assignment: two models handout and rubric

Individual Assignment : Two Models Handout and Rubric,    This paper will allow you to understand and evaluate two vastly different organizational models and to effectively communicate their differences.

  Developing strategic intent for toyota

The following report includes the description about the organization, its strategies, industry analysis in which it operates and its position in the industry.

  Gasoline powered passenger vehicles

In this study, we examine how gasoline price volatility and income of the consumers impacts consumer's demand for gasoline.

  An aspect of poverty in canada

Economics thesis undergrad 4th year paper to write. it should be about 22 pages in length, literature review, economic analysis and then data or cost benefit analysis.

  Ngn customer satisfaction qos indicator for 3g services

The paper aims to highlight the global trends in countries and regions where 3G has already been introduced and propose an implementation plan to the telecom operators of developing countries.

  Prepare a power point presentation

Prepare the power point presentation for the case: Santa Fe Independent School District

  Information literacy is important in this environment

Information literacy is critically important in this contemporary environment

  Associative property of multiplication

Write a definition for associative property of multiplication.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd