.objc10 \ If we get here then we are done processing this \ object, so now we check whether there are other \ objects to process: \ \ * If the object is in a group (i.e. the object ID \ is 6, 7, 8 or 9) and there are other objects to \ process in the group, we loop back to process them \ \ * If this is object 30, then we check whether we \ have processed all 8 items in its group, and if \ not, we loop back to process the next one (see \ part 10) \ \ * If this object is not caught by the above, then \ we finally return from the subroutine (see part \ 11) JSR NextObjectGroup \ If this object is in an object group, i.e. Y is 6, 7, \ 8 or 9, then increment the object's group number BCC objc11 \ If the C flag is clear then this object is not part of \ an object group, so jump to objc11 to skip the \ following \ This object is part of an object group, so now we move \ onto the next object in the group DEC objCount \ Decrement the loop counter to move on to the next \ object in the group BEQ objc12 \ If we have processed all 8 items in the group, jump \ to objc12 to return from the subroutine JMP objc2 \ Otherwise loop back to objc2 to process the next item \ in the groupName: SetObjectCoords (Part 9 of 11) [Show more] Type: Subroutine Category: 3D geometry Summary: Process the next object in the group, if applicable, or return from the subroutine if not Deep dive: 3D objectsContext: See this subroutine in context in the source code References: No direct references to this subroutine in this source file
[X]
Subroutine NextObjectGroup (category: 3D geometry)
Cycle to the next object group
[X]
Variable objCount in workspace Main variable workspace
Temporary storage, used as a loop counter in the object group visibility checks (shares a memory location with the alien variable)
[X]
Label objc11 in subroutine SetObjectCoords (Part 10 of 11)
[X]
Label objc12 in subroutine SetObjectCoords (Part 11 of 11)
[X]
Label objc2 in subroutine SetObjectCoords (Part 4 of 11)