I think you need to use c_move() instead. I've never written elevator code so I'm not sure exactly how it would work but try playing with c_move and the entities' push values.