Intermediate C++ Game Programming Tutorial 17

From Chilipedia
Revision as of 19:10, 16 November 2017 by Chili (Talk | contribs)

Jump to: navigation, search

In the video we take a look at a couple of bangers from <algorithm>, and we learn what lambda functions are and how to use them.

Topics Covered

  • Mutable modifier for member data

Video Timestamp Index

Tutorial 16

Part 2 Class Specification

All of the meme entities of the system will have the following shared functionality:

  • Member data for name (string), hp, speed, and power (int)
  • Getters for name, initiative (speed + 2d6), and alive state
  • Punch function that takes a different meme entity and applies damage (str + 2d6) to it
  • Tick function where the entity recovers 1d6 hp

Functions should narrate actions / effects when it makes sense. Tests should be made to check whether a character is alive before an action is performed (dead characters can't punch, recover, etc.)

There are two concrete entites: MemeFrog and MemeStoner MemeFrog:

  • Has 69 hp, 7 speed, and 14 power
  • Has a SpecialMove function that takes an entity and has a 1/3 chance of dealing 3d6 + 20 damage
  • Takes 1d6 of damage every turn

MemeStoner:

  • Has 80 hp, 4 speed, and 10 power
  • Has a SpecialMove function that takes no parameters and has a 1/2 chance of adding 3 speed, increasing power by 69/42, adding 10 hp, and adding to the entity's name

Homework

Part 1

Predict the output generated when the function shown at the end of Part 1 is executed.


Links

Algorithms Library

See also