BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//American Young Coder - ECPv6.10.1.1//NONSGML v1.0//EN
CALSCALE:GREGORIAN
METHOD:PUBLISH
X-WR-CALNAME:American Young Coder
X-ORIGINAL-URL:https://www.ayclogic.com
X-WR-CALDESC:Events for American Young Coder
REFRESH-INTERVAL;VALUE=DURATION:PT1H
X-Robots-Tag:noindex
X-PUBLISHED-TTL:PT1H
BEGIN:VTIMEZONE
TZID:America/Los_Angeles
BEGIN:DAYLIGHT
TZOFFSETFROM:-0800
TZOFFSETTO:-0700
TZNAME:PDT
DTSTART:20210314T100000
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:-0700
TZOFFSETTO:-0800
TZNAME:PST
DTSTART:20211107T090000
END:STANDARD
BEGIN:DAYLIGHT
TZOFFSETFROM:-0800
TZOFFSETTO:-0700
TZNAME:PDT
DTSTART:20220313T100000
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:-0700
TZOFFSETTO:-0800
TZNAME:PST
DTSTART:20221106T090000
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220323T190000
DTEND;TZID=America/Los_Angeles:20220323T200000
DTSTAMP:20260512T063523
CREATED:20220324T033417Z
LAST-MODIFIED:20220331T015654Z
UID:12166-1648062000-1648065600@www.ayclogic.com
SUMMARY:7 PM - Python Game Development
DESCRIPTION:Today: \n\nWe went over the homework to add the coins indicator.\nWe added the start waves button.\nWe added code for handling enemy waves.\n\nHomework: \n\nAdd configs for three different enemy types: ENEMY_1\, ENEMY_2\, ENEMY_3.\nInside enemy.py sprite\, depending on the enemy_type\, load a different image corresponding to the name of the directory.\nMake sure that you can load different enemy types with the three series of image animation where the given type of enemy is walking.\nBonus: create a new method called “create_enemy_with_timer”. If the self.current_wave attribute has a length greater than three then create a new enemy.  Use the self.current_wave.pop() method to make the current wave smaller and look up the next enemy_type.  Delay the creating of enemies using the timer technique.  Don’t try to pop more enemy_types and create more enemies if self.current_wave is empty.
URL:https://www.ayclogic.com/event/7-pm-python-game-development-114/
CATEGORIES:Advanced Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220319T130000
DTEND;TZID=America/Los_Angeles:20220319T140000
DTSTAMP:20260512T063523
CREATED:20220319T211035Z
LAST-MODIFIED:20220323T031025Z
UID:12090-1647694800-1647698400@www.ayclogic.com
SUMMARY:1 PM - Python Game Development
DESCRIPTION:Today:\n\nWe went over the homework to make the enemy tank fire the bullet.\nWe visualized the maze solver’s path by creating a white dot for each node coordinate.\nWe used the direction of the second node in the path from the maze solver to determine which way to move the enemy tank.\nWe fixed the bug where the maze solver thinks the enemy tank only takes up once map cell.\n\nHomework:\n\nAdd collision detection between the enemy bullets and the player tank.\nCreate a new game mode called GAME_OVER.\nWhen the game mode is GAME_OVER show game_over page which should look like this:\n\n\n\n\nWhen the enemy tank shoots the player tank change the game mode to be GAME_OVER.
URL:https://www.ayclogic.com/event/1-pm-python-game-development-53/
CATEGORIES:Advanced Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220312T130000
DTEND;TZID=America/Los_Angeles:20220312T140000
DTSTAMP:20260512T063523
CREATED:20220312T220320Z
LAST-MODIFIED:20220312T220959Z
UID:11984-1647090000-1647093600@www.ayclogic.com
SUMMARY:1 PM - Python Game Development
DESCRIPTION:Today \n\nWe went over the homework to add the game won page.\nWe added logic so the enemy tank is recreated after winning the game.\nWe added the maze_solver and imported it in the enemy tank.\n\nHomework: \n\nCreate a new sprite group called enemy_bullet_group that will hold bullets shot from the enemy tank.\nAdd a method called launch_enemy_bullet which fires a bullet from the self.enemy_tank.  You adapt the logic from self.launch_bullet method.   You shouldn’t need to click the mouse to launch the enemy bullet successfully.  Create a Bullet with the correct direction and then add it to the self.enemy_bullet_group.  Make sure the enemy bullets get drawn on the screen.
URL:https://www.ayclogic.com/event/1-pm-python-game-development-52/
CATEGORIES:Advanced Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220309T190000
DTEND;TZID=America/Los_Angeles:20220309T200000
DTSTAMP:20260512T063523
CREATED:20220310T041157Z
LAST-MODIFIED:20220310T042705Z
UID:11938-1646852400-1646856000@www.ayclogic.com
SUMMARY:7 PM - Python Game Development
DESCRIPTION:Today: \n\nWe went over the homework to add the landing page.\nWe add the TowerForPurchase sprite and created a floating TowerForPurchase when the target collides with the non floating TowerForPurchase.\n\nHomework: \n\nCreate a new sprite class called “TowerHotspot”\, and then position them at these locations:\n\nWhen the floating tower collides with a tower hotspot sprite\, create a Tower at the hotspot location using similar logic we used to create the floating TowerForPurchase.\nWhen the Tower is created\, remove the floating tower from its sprite group.\n\n 
URL:https://www.ayclogic.com/event/7-pm-python-game-development-112/
CATEGORIES:Advanced Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220305T130000
DTEND;TZID=America/Los_Angeles:20220305T140000
DTSTAMP:20260512T063523
CREATED:20220305T220348Z
LAST-MODIFIED:20220305T220348Z
UID:11874-1646485200-1646488800@www.ayclogic.com
SUMMARY:1 PM - Python Game Development
DESCRIPTION:Today: \n\nWe went over the homework to add the landing page.\nWe went over the game walk and started the maze solver module to user for the enemy tank.\nAdded logic to kill the enemy tank with the bullet.\n\nHomework: \n\nAdd the game won page when the enemy tank is killed.  You should be able to click the play button on the game won page. Don’t worry about reseting the state of the map and game\, we’ll handle that later. Make sure the game won page looks something like this:
URL:https://www.ayclogic.com/event/1-pm-python-game-development-51/
CATEGORIES:Advanced Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220302T190000
DTEND;TZID=America/Los_Angeles:20220302T200000
DTSTAMP:20260512T063523
CREATED:20220303T040650Z
LAST-MODIFIED:20220303T171352Z
UID:11835-1646247600-1646251200@www.ayclogic.com
SUMMARY:7 PM - Python Game Development
DESCRIPTION:Today: \n\nWe added the bullet sprite.\nWe added direction to the bullet and spawned them in 4 different directions\nWe added the enemy health.\n\nHomework: \n\nAdd the landing page with a play button:\nWhen you click the play button show the game in session page instead.\nAdd collision detection between the bullet and the enemy which destroy both sprites.
URL:https://www.ayclogic.com/event/7-pm-python-game-development-111/
CATEGORIES:Advanced Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220226T130000
DTEND;TZID=America/Los_Angeles:20220226T140000
DTSTAMP:20260512T063523
CREATED:20220226T220248Z
LAST-MODIFIED:20220226T220359Z
UID:11764-1645880400-1645884000@www.ayclogic.com
SUMMARY:1 PM - Python Game Development
DESCRIPTION:Today: \n\nWe went over the homework to center the bullet’s initial creation position\, and added collision detection between the enemy tank and the bricks.\nWe added logic so the enemy tank faces the enemy turret in the direction of the player tank.\n\nHomework: \n\nAdd some game modes: GAME_LANDING_PAGE and GAME_IN_SESSION.  Define a new attribute self.mode inside tank game originally set to GAME_LANDING_PAGE. Define a new method called handle_landing_page\, that shows the landing page like below:\n\nWhen you click the Play button switch the mode to GAME_IN_SESSION and show all the logic that we added previously with the two tanks etc.  You can follow previous examples we for handling the landing page in Birdie etc.\nBonus: Add collision detection between the player tank and the enemy tank and switch to GAME_LANDING_PAGE when the enemy tank gets destroyed.
URL:https://www.ayclogic.com/event/1-pm-python-game-development-50/
CATEGORIES:Advanced Python Game Development,Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220219T130000
DTEND;TZID=America/Los_Angeles:20220219T140000
DTSTAMP:20260512T063523
CREATED:20220219T220019Z
LAST-MODIFIED:20220219T220027Z
UID:11660-1645275600-1645279200@www.ayclogic.com
SUMMARY:1 PM - Python Game Development
DESCRIPTION:Today: \n\nWe went over how to add the iron walls.\nWe reviewed how we pointed the bullet in the correct direction.\nWe moved the bullet in the direction the turret is facing.\n\nHomework: \n\nSpawn the bullet so that first appears in the center of the tank.\nAdd logic so the enemy tank can’t move through both normal and iron bricks.  You can use the same technique we used for the player tank.
URL:https://www.ayclogic.com/event/1-pm-python-game-development-49/
CATEGORIES:Advanced Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220216T190000
DTEND;TZID=America/Los_Angeles:20220216T200000
DTSTAMP:20260512T063523
CREATED:20220217T040335Z
LAST-MODIFIED:20220217T040335Z
UID:11625-1645038000-1645041600@www.ayclogic.com
SUMMARY:7 PM - Python Game Development
DESCRIPTION:Today: \n\nWe went over the homework to add the target.\nWe added directions and kept track of the current region and expected directions\, so the enemy could walk down the path.\n\nHomework: \n\nFinish the logic so the enemy walks down the path through region “5a” or “5b”.\nAdd animation to to the enemy.  First load up an attribute called “self.images” which contains all the animation frames from “2_enemies_1_WALK_000.png” to “2_enemies_1_WALK_009.png”.  Then add animation by add a get_next_image method which returns the next image after a 5 frame delay.
URL:https://www.ayclogic.com/event/7-pm-python-game-development-108/
CATEGORIES:Advanced Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220212T130000
DTEND;TZID=America/Los_Angeles:20220212T140000
DTSTAMP:20260512T063523
CREATED:20220212T224156Z
LAST-MODIFIED:20220212T224731Z
UID:11560-1644670800-1644674400@www.ayclogic.com
SUMMARY:1 PM - Python Game Development
DESCRIPTION:Today: \n\nWe went over the homework to rotate the shield.\nWe added animation to the exploding brick.\nWe oriented the bullet so it’s facing the correct direction using the angle passed by the turret.\n\nHomework: \n\nModify the Brick sprite constructor to add an additional parameter type that has value either WALL_FLAG or BORDER_WALL_FLAG.  When WALL_FLAG is passed in the constructor\, use the current logic to load the red brick image\, but when BORDER_WALL_FLAG is passed load a  different image\, “IronWall.png”.  You can find this image here: Or at gitlab here.\nModify the create_map method so that when the cell_type is a BORDER_WALL_FLAG\, then create a Brick is passed with the type parameter BORDER_WALL_FLAG\, but when it’s wall type  is WALL_FLAG\, then the Brick is created with the type parameter WALL_FLAG.  Add the bricks created with the border wall flag to a separate sprite group so that they can’t be destroyed by the bullets.\nModify the MAP variable in config.py so that the top side\, bottom side\, and left and right sides of the map have the BORDER_WALL_FLAG value. Make sure that these get created on the screen using the create_map method:\nBonus: move the bullet in the correct direction based on the direction parameter that gets passed in from the turret.  Also center the bullet so that when it’s created\, the center of the bullet is equal to the center of the turret.
URL:https://www.ayclogic.com/event/1-pm-python-game-development-48/
CATEGORIES:Advanced Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220209T190000
DTEND;TZID=America/Los_Angeles:20220209T200000
DTSTAMP:20260512T063523
CREATED:20220210T040525Z
LAST-MODIFIED:20220210T040525Z
UID:11530-1644433200-1644436800@www.ayclogic.com
SUMMARY:7 PM - Python Game Development
DESCRIPTION:Today: \n\nWe went over the homework to setup tower of defense.\nWe created the enemy sprite and moved it accross the screen.\nWe went over the technique to move the enemy along the path.\n\nHomework: \n\nCreate a new sprite called “TargetPointer” which uses the “target.png” image.  Move this sprite wherever the mouse moves\, and make sure to associate a hitbox “rect” attribute with it.
URL:https://www.ayclogic.com/event/7-pm-python-game-development-107/
CATEGORIES:Advanced Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220205T130000
DTEND;TZID=America/Los_Angeles:20220205T140000
DTSTAMP:20260512T063523
CREATED:20220205T220045Z
LAST-MODIFIED:20220205T220045Z
UID:11471-1644066000-1644069600@www.ayclogic.com
SUMMARY:1 PM - Python Game Development
DESCRIPTION:Today: \n\nWe went over the homework to add the shield on top of the tank.\nWe corrected the rotation of the turret.\n\nHomework: \n\nAdd a new attribute “self.degrees_rotated” to the shield\, and every update method/frame increase the degrees rotated by one.\nRotate the original image by the “self.degrees_rotated” value\, and draw this image on the screen.\nCenter the rotated shield on the center of the tank by positioning it with respect to the center of the shields target location using the same method we used to rotated the turret correctly.
URL:https://www.ayclogic.com/event/1-pm-python-game-development-47/
CATEGORIES:Advanced Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220202T190000
DTEND;TZID=America/Los_Angeles:20220202T200000
DTSTAMP:20260512T063523
CREATED:20220203T042617Z
LAST-MODIFIED:20220203T042617Z
UID:11443-1643828400-1643832000@www.ayclogic.com
SUMMARY:7 PM - Python Game Development
DESCRIPTION:Today: \n\nWe went over the homework to add the tank explosion sprite.\nWe delayed the shield power-up creation\, and created it on random empty squares.\n\nHomework: \n\nClone Tower of Defense and checkout the “skeleton” branch.  Then create a new branch using your name from this branch.  Then setup the project so that you can load the game background.
URL:https://www.ayclogic.com/event/7-pm-python-game-development-106/
CATEGORIES:Advanced Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220129T130000
DTEND;TZID=America/Los_Angeles:20220129T140000
DTSTAMP:20260512T063523
CREATED:20220129T225202Z
LAST-MODIFIED:20220129T225202Z
UID:11374-1643461200-1643464800@www.ayclogic.com
SUMMARY:1 PM - Python Game Development
DESCRIPTION:Today: \n\nWe went over the homework to add the shield powerup.\nWe fixed the turret to point directly at the mouse by referencing the center of the turret.\nWe went over the technique to rotate the turret correctly bytes  referencing the center of the turret.\n\nHomework: \n\nCreate a new sprite class “Shield” using the “Get_Shield_Player_1.png” image.\nAdd a method handle_tank_shield_powerup_collision.  When the player tank collides with the shield powerup\, make the shield appear on the screen.\nWhen it appears\, make the shield appear the same location as the player tank.  Keep the location of the shield synced with the location of the player tank.
URL:https://www.ayclogic.com/event/1-pm-python-game-development-46/
CATEGORIES:Advanced Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220122T130000
DTEND;TZID=America/Los_Angeles:20220122T140000
DTSTAMP:20260512T063523
CREATED:20220123T001017Z
LAST-MODIFIED:20220123T001017Z
UID:11254-1642856400-1642860000@www.ayclogic.com
SUMMARY:1 PM - Python Game Development
DESCRIPTION:Today: \n\nWe went over the homework to add the enemy tank and enemy turret\nWe refactored the enemy tank and enemy turret to avoid code duplication\, using inheritance.\n\nHomework: \n\nAdd a sprite class for the shield power up called ShieldPowerup.\nPlace the shield power up somewhere on the screen.\nDetect collision between the play tank and the shield powerup.  The shield power should disappear from the screen.
URL:https://www.ayclogic.com/event/1-pm-python-game-development-45/
CATEGORIES:Advanced Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220119T190000
DTEND;TZID=America/Los_Angeles:20220119T200000
DTSTAMP:20260512T063523
CREATED:20220120T040310Z
LAST-MODIFIED:20220120T040310Z
UID:11201-1642618800-1642622400@www.ayclogic.com
SUMMARY:7 PM - Python Game Development
DESCRIPTION:Today \n\nWent over the homework to fire the enemy bullet in the correct direction.\nWe added logic so the player tank won’t move or animate unless the user presses the move keys.\nWe added logic so the shield protects the player tank.\n\nHomework \n\nWhen the player is destroyed by an enemy bullet\, switch the game mode to game over. Add a new page to show the game over screen:\n\nAdd sound effects for when the enemy tank or player tanks are destroyed by the bullet using the “explodify.wav” sound effect.
URL:https://www.ayclogic.com/event/7-pm-python-game-development-104/
CATEGORIES:Advanced Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220115T130000
DTEND;TZID=America/Los_Angeles:20220115T140000
DTSTAMP:20260512T063523
CREATED:20220115T220255Z
LAST-MODIFIED:20220115T220333Z
UID:11110-1642251600-1642255200@www.ayclogic.com
SUMMARY:1 PM - Python Game Development
DESCRIPTION:Today \n\nWe went over the homework.\nWe reviewed some trigonometry\nWe rotated the turret so it faces the direction of the mouse.\n\nHomework \n\nAdd a sprite class for the enemy tank using the image in Enemy_Tanks.  Create a separate class for this.\nBonus: Add a turret for the enemy tank using the folder in files in the same folder.\nIt should look something like this
URL:https://www.ayclogic.com/event/1-pm-python-game-development-44/
CATEGORIES:Advanced Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220108T130000
DTEND;TZID=America/Los_Angeles:20220108T140000
DTSTAMP:20260512T063523
CREATED:20220108T215859Z
LAST-MODIFIED:20220108T215859Z
UID:11002-1641646800-1641650400@www.ayclogic.com
SUMMARY:1 PM - Python Game Development
DESCRIPTION:Today: \n\nWe went over the homework\nAdd collision detection between the tank and the bricks.\nwe moved the tank back when it collided with the bricks.\n\nHomework: \n\nAdd collision detection between the bullet and the bricks.  When the bullet collides with the brick\, remove both from the screen.
URL:https://www.ayclogic.com/event/1-pm-python-game-development-43/
CATEGORIES:Advanced Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220105T190000
DTEND;TZID=America/Los_Angeles:20220105T200000
DTSTAMP:20260512T063523
CREATED:20220106T042323Z
LAST-MODIFIED:20220106T042323Z
UID:10965-1641409200-1641412800@www.ayclogic.com
SUMMARY:7 PM - Python Game Development
DESCRIPTION:Today: \n\nWe went over the homework to add sound effects\nWe reviewed the code for the maze solver.\nWe added logic to move the enemy tank based on the path.\nWe cleaned up the code to reduce duplicate code between the enemy and player tank classes.\n\nHomework: \n\nImplement collision detection between the bullet and the enemy tank.  Both the enemy tank and bullet should be destroyed.\nBonus: add the game won page when the enemy tank is destroyed. Draw “assets/Texts/Text_You_Won.png”above the play button:
URL:https://www.ayclogic.com/event/7-pm-python-game-development-102/
CATEGORIES:Advanced Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20211218T130000
DTEND;TZID=America/Los_Angeles:20211218T140000
DTSTAMP:20260512T063523
CREATED:20211218T220120Z
LAST-MODIFIED:20211218T221050Z
UID:10820-1639832400-1639836000@www.ayclogic.com
SUMMARY:1 PM - Python Game Development
DESCRIPTION:Today \n\nWe went over the homework to add the turret sprite.\nWe created a MAP config inside the config.py file.\nWe made the MAP have the correct size\, 28 columns and 20 rows so it can “cover” the entire screen.\nAs always\, you can check out the code on my branch here.\n\nHomework \n\nCustomize your map to make it interesting.  You could create a maze pattern or whatever you want.\nAdd a Bullet sprite using the “Bullet.png” filename. Get a bullet to appear on the screen by creating a Bullet sprite.  The bullet should move to the right\, you can reference what we did in the Birdie game\, it’s similar to the fireball.\nWhen use presses the mouse button\, shoot a bullet by creating a new bullet and adding it to the bullet group.\nMake the bullet get created from the position of the tank.
URL:https://www.ayclogic.com/event/1-pm-python-game-development-42/
CATEGORIES:Advanced Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20211215T190000
DTEND;TZID=America/Los_Angeles:20211215T200000
DTSTAMP:20260512T063523
CREATED:20211216T040548Z
LAST-MODIFIED:20211216T040720Z
UID:10793-1639594800-1639598400@www.ayclogic.com
SUMMARY:7 PM - Python Game Development
DESCRIPTION:Today: \n\nWe went over the homework.\nWe went over the maze solver and started the process to move the enemy tank with it.\n\nHomework: \n\nAdd a game “mode” attribute in TankGame\, which starts with GAME_NOT_IN_SESSION\, and add a landing page with the play button\, and the logo\n\nAdd logic so that if the user clicks the play button in transitions to game in session.
URL:https://www.ayclogic.com/event/7-pm-python-game-development-99/
CATEGORIES:Advanced Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20211204T130000
DTEND;TZID=America/Los_Angeles:20211204T140000
DTSTAMP:20260512T063523
CREATED:20211204T215909Z
LAST-MODIFIED:20211204T215909Z
UID:10617-1638622800-1638626400@www.ayclogic.com
SUMMARY:1 PM - Python Game Development
DESCRIPTION:Today: \n\nWe cloned the tank-game git repo.\nWe learned about git branches.\nWe added the tank sprite.\n\nHomework \n\nAdd logic so that you can move the tank. Use “a\, s\, d\, w” keys similar to what we did for the Birdie project to control the player.\nCreate another sprite that draws the Brick on the screen.  You can use the “Brick.png”. The brick sprite should have a location\, (x\, y)\, and screen.
URL:https://www.ayclogic.com/event/1-pm-python-game-development-40/
CATEGORIES:Advanced Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20211110T190000
DTEND;TZID=America/Los_Angeles:20211110T200000
DTSTAMP:20260512T063523
CREATED:20211111T041255Z
LAST-MODIFIED:20211111T041328Z
UID:10407-1636570800-1636574400@www.ayclogic.com
SUMMARY:7 PM - Advanced Python Game Development
DESCRIPTION:Today: \n\nWe went over the homework\nWe added the shield timer to destroy it after some interval\nWe went over why we need to use copy.deepcopy to make a copy of the map.\n\nHomework: \n\nMake the shield rotate using the same technique that we used to make the turret rotate.
URL:https://www.ayclogic.com/event/7-pm-advanced-python-game-development-6/
CATEGORIES:Advanced Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20210918T120000
DTEND;TZID=America/Los_Angeles:20210918T130000
DTSTAMP:20260512T063523
CREATED:20210918T202140Z
LAST-MODIFIED:20210918T202140Z
UID:9446-1631966400-1631970000@www.ayclogic.com
SUMMARY:12 PM - Advanced Python Game Development
DESCRIPTION:Today We Do\n\n\nFixed Powerup spawn location overlapping with walls \n\n\nFixed Shield does not go away. \n\n\nFixed the enemy tank does not launch bullet periodically. \n\nThe class is finished congrats.
URL:https://www.ayclogic.com/event/12-pm-advanced-python-game-development-13/
CATEGORIES:Advanced Python Game Development,Python Class
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20210914T153000
DTEND;TZID=America/Los_Angeles:20210914T163000
DTSTAMP:20260512T063523
CREATED:20210914T233203Z
LAST-MODIFIED:20210914T233203Z
UID:9372-1631633400-1631637000@www.ayclogic.com
SUMMARY:3:30 PM - Advance Python Game Development
DESCRIPTION:Today We Do:\n\nWe added wall.py where the image could either be IronWall.png or Brick.png.\nWe added a feature to dynamically build the wall on the screen based on config.py\n\nHomework:\n\nGenerate WALL_MAP in config.py. There should be 28 columns and 20 rows. The edges should be IRON_WALL. The Inside should be either BRICK_WALL or empty space.
URL:https://www.ayclogic.com/event/330-pm-advance-python-game-development/
CATEGORIES:Advanced Python Game Development,Python Class
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20210913T160000
DTEND;TZID=America/Los_Angeles:20210913T170000
DTSTAMP:20260512T063523
CREATED:20210914T000041Z
LAST-MODIFIED:20210914T013052Z
UID:9361-1631548800-1631552400@www.ayclogic.com
SUMMARY:4 PM - Advance Python Game Development
DESCRIPTION:Today We Do\n\nMake the tank able to use LEFT\, RIGHT\, UP and DOWN costumes.\nMake the tank able to move up\, down\, left and right via W\, S A\, D keys on your keyboard.\nWe added player_turret.py sprite and make the turret follow wherever the player_tank is moving.\n\nHomework:\n\nCreate a new sprite \, brick.py\, use “assets/Brick.png” for the image.\nDisplay one of this sprite anywhere on the screen.
URL:https://www.ayclogic.com/event/4-pm-advance-python-game-development/
CATEGORIES:Advanced Python Game Development,Python Class
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20210911T120000
DTEND;TZID=America/Los_Angeles:20210911T130000
DTSTAMP:20260512T063523
CREATED:20210911T201848Z
LAST-MODIFIED:20210911T201848Z
UID:9329-1631361600-1631365200@www.ayclogic.com
SUMMARY:12 PM - Advanced Python Game Development
DESCRIPTION:Today We Do\n\nWe added the code to activate the shield when one of the tanks collide with the powerup sprite.\nWe added the code that will display GAME OVER page.\n\nHomework\n\nAdd sound effects\n\nWhen bullet hit the wall\, play “assets/audio/hit1.wav” sound effect\nWhen bullet hit any of the tank\, play “assets/audio/explodify.wav”\nWhen any of the tank launch bullet\, play “assets/audio/TankFiring.wav”
URL:https://www.ayclogic.com/event/12-pm-advanced-python-game-development-12/
CATEGORIES:Advanced Python Game Development,Python Class
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20210828T120000
DTEND;TZID=America/Los_Angeles:20210828T130000
DTSTAMP:20260512T063523
CREATED:20210828T190325Z
LAST-MODIFIED:20210828T195816Z
UID:9162-1630152000-1630155600@www.ayclogic.com
SUMMARY:12 PM - Advanced Python Game Development
DESCRIPTION:Today We Do\n\nWe completed Shields\nWe display powerup sprite on empty space on the map.\n\nHomework\n\nMake the powerup show up once every 5 seconds.\nAdd collision detection between player tank and the powerup sprite. If they collide enable player’s shield. Make sure you remove the code that will automatically enabled the player’s shield now.\nDo the same thing with enemy tank and the powerup sprite.\nThere is no class on Sept 4 because labor day weekend.
URL:https://www.ayclogic.com/event/12-pm-advanced-python-game-development-11/
CATEGORIES:Advanced Python Game Development,Python Class
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20210821T120000
DTEND;TZID=America/Los_Angeles:20210821T130000
DTSTAMP:20260512T063523
CREATED:20210821T200615Z
LAST-MODIFIED:20210821T200615Z
UID:9079-1629547200-1629550800@www.ayclogic.com
SUMMARY:12 PM - Advanced Python Game Development
DESCRIPTION:Today We Do\n\nWe displayed the shield on top of the player\nWe make sure the enemy bullet disappear when colliding with player.shield.\nWe randomly pick an empty space on the map\n\nHomework\n\nDisplay enemy shield on top of the enemy.\nMake sure the player bullet disappear when colliding with enemy.shield.\nDisplay shield_power_up sprite on the screen. As a bonus point\, if you can display the power_up sprite every 5 seconds on location based on self.get_random_empty_space()\, it would be great.
URL:https://www.ayclogic.com/event/12-pm-advanced-python-game-development-10/
CATEGORIES:Advanced Python Game Development,Python Class
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20210807T120000
DTEND;TZID=America/Los_Angeles:20210807T130000
DTSTAMP:20260512T063523
CREATED:20210807T200209Z
LAST-MODIFIED:20210807T200209Z
UID:8878-1628337600-1628341200@www.ayclogic.com
SUMMARY:12 PM - Advance Python Game Development
DESCRIPTION:Today We Do\n\nWe display GAME WIN page.\nWe made sure the tank explosion animation is given a chance to finish before GAME WIN page is displayed.\n\nHomework\n\nWhen tank is destroyed\, add sound effect “assets/audio/explodify.wav”.\nCreate a new sprite shield.py. Use “assets/Get_Shield_Player_1.png” for image. Make the sprite appear on the screen.
URL:https://www.ayclogic.com/event/12-pm-advance-python-game-development-3/
CATEGORIES:Advanced Python Game Development,Python Class
END:VEVENT
END:VCALENDAR