updated code + weapons