public void strikeByObject(int ap, int weight, int vecX, int vecY) {
		if (dead) {
			return;
		}
		// 迥ｶ諷九↓繧医ｋ繝�Γ繝ｼ繧ｸ螟牙喧
		if(wet) {
			ap *= 1.5;  
		}
		if(isHasPants()) {
			ap *= 0.8;
		}
		// 蜷ｹ縺｣鬟帙�險ｭ螳�
		// 菴馴㍾蟾ｮ
		int kick = (weight - getWeight()) / 100;
		if(kick < 1) kick = 1;
//System.out.println(vecX+","+vecY+":"+kick);
		vecX *= kick;
		vecY *= kick;
		
		strike(ap);
		kick(vecX, vecY, -5);
		if (dead) {
			if (!silent) {
				setMessage(MessagePool.getMessage(this, MessagePool.Action.Dying));
				stay();
			}
			crashed = true;
		}
	}