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:20220313T100000
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:-0700
TZOFFSETTO:-0800
TZNAME:PST
DTSTART:20221106T090000
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220202T190000
DTEND;TZID=America/Los_Angeles:20220202T200000
DTSTAMP:20260428T111504
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:20220205T130000
DTEND;TZID=America/Los_Angeles:20220205T140000
DTSTAMP:20260428T111504
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:20220208T073000
DTEND;TZID=America/Los_Angeles:20220208T083000
DTSTAMP:20260428T111504
CREATED:20220208T163822Z
LAST-MODIFIED:20220208T164211Z
UID:11505-1644305400-1644309000@www.ayclogic.com
SUMMARY:7:30 AM - Intro To Python - Indo - Gamas
DESCRIPTION:Today We Do\n\nWe reviewed homework from last week. Page 25\, TRY IT YOURSELF 2-3\, 2-4\, 2-5 and 2-6.\nWe reviewed homework from page 22 to 23.\n\nHomework\n\nCreate a new file Feb8_IFELSE_Homework.py\nIn this new file\, copy codes from page 79 to 81.
URL:https://www.ayclogic.com/event/730-am-intro-to-python-indo-gamas/
CATEGORIES:Python Class,Python Level 1
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220208T163000
DTEND;TZID=America/Los_Angeles:20220208T173000
DTSTAMP:20260428T111504
CREATED:20220209T013236Z
LAST-MODIFIED:20220209T013236Z
UID:11515-1644337800-1644341400@www.ayclogic.com
SUMMARY:4:30 PM - Python OOP - Gamas
DESCRIPTION:Homework\n\nModify Feb8_ShoppingCartV2.py so we are using “items” dictionary wherever we use Milk\, Eggs\, Orange Juice and Bread.\nCreate one more dictionary “prices” \, the key will be either “1”\,”2″\,”3″ or “4”. The values will be the prices of each item. So for instance\, “1”: 5 because “1” is the price of Milk which is $5.\nReplace all the prices inside the while to use the “prices” dictionary.
URL:https://www.ayclogic.com/event/430-pm-python-oop-gamas/
CATEGORIES:OOP Python,Python Class
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220209T190000
DTEND;TZID=America/Los_Angeles:20220209T200000
DTSTAMP:20260428T111504
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:20220212T130000
DTEND;TZID=America/Los_Angeles:20220212T140000
DTSTAMP:20260428T111504
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:20220212T140000
DTEND;TZID=America/Los_Angeles:20220212T150000
DTSTAMP:20260428T111504
CREATED:20220212T223947Z
LAST-MODIFIED:20220212T224000Z
UID:11561-1644674400-1644678000@www.ayclogic.com
SUMMARY:2 PM - Intro To Python - Gamas
DESCRIPTION:2nd Quiz 1 hour. 10% of the grade.
URL:https://www.ayclogic.com/event/2-pm-intro-to-python-39/
CATEGORIES:Python Class,Python Level 1
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220216T190000
DTEND;TZID=America/Los_Angeles:20220216T200000
DTSTAMP:20260428T111504
CREATED:20220217T035743Z
LAST-MODIFIED:20220217T040032Z
UID:11624-1645038000-1645041600@www.ayclogic.com
SUMMARY:7 PM - Intro To Python - Gamas
DESCRIPTION:Today We Do\n\nWe finished reviewing input from shell homework.\nWe went over list\, how to use it and append.\n\nHomework\n\nCreate a new python file Feb16_ListHomework.py\nCopy codes from page 38 to 41.\nAlso do page 42 TRY IT YOURSELF: 3-4\,3-5\,3-6.\nIf you have question\, you can email me at gamas@ayclogic.com. If you have problem with your homework\, try to be specific with your problem. Include the code (attach the python file) in the email if you have an error. Text me at 626-532-7844 if I don’t respond to your email.
URL:https://www.ayclogic.com/event/7-pm-intro-to-python-gamas-5/
CATEGORIES:Python Class,Python Level 1
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220216T190000
DTEND;TZID=America/Los_Angeles:20220216T200000
DTSTAMP:20260428T111504
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:20220219T130000
DTEND;TZID=America/Los_Angeles:20220219T140000
DTSTAMP:20260428T111504
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:20220219T140000
DTEND;TZID=America/Los_Angeles:20220219T150000
DTSTAMP:20260428T111504
CREATED:20220224T055321Z
LAST-MODIFIED:20220224T055321Z
UID:11736-1645279200-1645282800@www.ayclogic.com
SUMMARY:2 PM - Intro To Python - Gamas
DESCRIPTION:Today We Do\n\nWe reviewed 2nd Quiz result.\n\nHomework\n\nReview the quiz solution and come up with questions.\nCreate Feb19_ListAndFunctionHomework.py\nDo exercises in https://www.ayclogic.com/intro-to-python-exercises-for-quiz-2/ .
URL:https://www.ayclogic.com/event/2-pm-intro-to-python-gamas-15/
CATEGORIES:Python Class,Python Level 1
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220222T073000
DTEND;TZID=America/Los_Angeles:20220222T083000
DTSTAMP:20260428T111504
CREATED:20220222T162926Z
LAST-MODIFIED:20220222T162926Z
UID:11714-1645515000-1645518600@www.ayclogic.com
SUMMARY:7:30 AM - Intro To Python - Gamas
DESCRIPTION:Homework\n\nCreate a new file Feb22_IFELSEHomework2.py\nDo page 84 to 85: 5-3\, 5-4\, 5-5\,5-6. This is very similar to last week homework. Basically you have to do some IF ELSE or IF ELIF.
URL:https://www.ayclogic.com/event/730-am-intro-to-python-gamas-2/
CATEGORIES:Python Class,Python Level 1
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220223T190000
DTEND;TZID=America/Los_Angeles:20220223T200000
DTSTAMP:20260428T111504
CREATED:20220224T040311Z
LAST-MODIFIED:20220224T040311Z
UID:11731-1645642800-1645646400@www.ayclogic.com
SUMMARY:7 PM - Intro To Python - Gamas
DESCRIPTION:Today We Do\n\nWe finished going over List Homeworks from page 38 to 42.\nWe also learned how to replace element in the list and how to know the number of element inside the list.\n\nHomework\n\nCreate a new file Feb23_ForLoopList.py\nCopy code from page 50\, 51\, 52
URL:https://www.ayclogic.com/event/7-pm-intro-to-python-gamas-6/
CATEGORIES:Python Class,Python Level 1
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220223T190000
DTEND;TZID=America/Los_Angeles:20220223T200000
DTSTAMP:20260428T111504
CREATED:20220224T041607Z
LAST-MODIFIED:20220224T041619Z
UID:11732-1645642800-1645646400@www.ayclogic.com
SUMMARY:7 PM - Python Game Development
DESCRIPTION:Today: \n\nWent over the homework to add animation and finish the enemy map navigation.\nWe added the tower.\nWe added the health indicator.\n\nHomework: \n\nCreate a new sprite class called Bullet.  Use the the image “assets/images/red_projectile2.png”. for the bullet’s self.image attribute.\nAdd a method to create bullet inside main.py called launch_bullet\, that every 120 frames launches a new bullet.  Make it so that your tower will create one bullet moving to the right about every 3 seconds.\nBonus: first add a direction parameter to your Bullet class to face and move it the correct direction provided which is measured in degrees.  Then inside the tower\, create 4 bullet every 3 seconds\, but make it so the bullets face different directions and move different directions\, as in the example below. A bullet should be created with each of these directions: 45\, 135\, 225\, and 315.
URL:https://www.ayclogic.com/event/7-pm-python-game-development-109/
CATEGORIES:Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220224T163000
DTEND;TZID=America/Los_Angeles:20220224T173000
DTSTAMP:20260428T111504
CREATED:20220225T015723Z
LAST-MODIFIED:20220225T015858Z
UID:11741-1645720200-1645723800@www.ayclogic.com
SUMMARY:4:30 PM - Python OOP - Gamas
DESCRIPTION:Homework\n\nCreate a new file Feb24_ClassHomework2.py\nDo page 167\, TRY IT YOURSELF: 9-4 this is the continuation of the last week homework (Restaurant class)
URL:https://www.ayclogic.com/event/430-pm-python-oop-gamas-3/
CATEGORIES:Python Class,Python Level 1
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220225T190000
DTEND;TZID=America/Los_Angeles:20220225T200000
DTSTAMP:20260428T111504
CREATED:20220226T035815Z
LAST-MODIFIED:20220226T035815Z
UID:11754-1645815600-1645819200@www.ayclogic.com
SUMMARY:7 PM - Python Game Development
DESCRIPTION:Homework\n\nLoad assets/bird01_A.png in Birdie.__init__ method\nInside game_loop method\, blit the image that you just load.\nMake sure to blit this image AFTER you blit the background. Otherwise\, you wont see the bird image.\nThis is very similar to how you blit the self.background. image
URL:https://www.ayclogic.com/event/7-pm-python-game-development-110/
CATEGORIES:Python Class,Python Game Development
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20220226T130000
DTEND;TZID=America/Los_Angeles:20220226T140000
DTSTAMP:20260428T111504
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:20220226T140000
DTEND;TZID=America/Los_Angeles:20220226T150000
DTSTAMP:20260428T111504
CREATED:20220227T024034Z
LAST-MODIFIED:20220227T024052Z
UID:11784-1645884000-1645887600@www.ayclogic.com
SUMMARY:2 PM - Intro To Python - Gamas
DESCRIPTION:Today We Do\n\nWe reviewed homework about for loop and functions.\nWe started Turtle module.\n\nHomework\n\nContinue with Feb26_BasicTurtle.py.\nHomeworks are due on Friday night\, please upload to google drive.\nCreate square shape and triangle. Look at below screenshot for the coordinates.
URL:https://www.ayclogic.com/event/2-pm-intro-to-python-gamas-16/
CATEGORIES:Python Class,Python Level 1
END:VEVENT
END:VCALENDAR