generateShipLocation & onkeypress added 不忍直视！