c = GetNextChannel(#bitmap) -- get a new free channel
gChannels.append(c) -- add it to our array so we can track used channels.
sprite(c).puppet = true -- puppet the sprite
sprite(c).scriptInstanceList =  -- clear any scripts that may have been on this sprite from a previous use
sprite(c).scriptInstanceList.add(new(script "clsCustomer")) -- add our character script.
sprite(c).member = void -- remove any previous members. this is needed otherwise, you can get member problems.
sprite(c).member = member(CustomerType & "_Walk_se_0001", CustomerType) -- set the member
sprite(c).width = sprite(c).member.image.width -- set the sprite width and height to the new member size
sprite(c).height = sprite(c).member.image.height
sprite(c).visible = false -- make it not visible until we need it on the stage
sprite(c).locH = -200 -- Set the starting location
sprite(c).locV = -200
sprite(c).LocZ = gChannelStart -- Set the intial locz to a constant layer value - in this case, gChannelStart is = to 100
sprite(c).ink = 8 -- set the ink
sprite(c).Initialize(c) -- Call a routine int he character to do all the stuff I need it to do that would normally be called on a begin sprite
gCurrentLevel.pCustomerSprites.append(sprite(c)) -- add the sprite to our array of active characters