public void perform(Entity target, Entity self){
		this.SUCCESS = false;
		this.BROKE_GRIB = false;
		
		//Logic
		self.cooldown = 120;
		
		int roll = random.nextInt(100);
		
		roll += ((400 - target.energy) / 4);
				
		if(roll < this.SUCCESS_RATE){
			JudokaComponent.techniqueTimer = JudokaComponent.timer;
			target.energy -= this.ENERGY_LOST_ON_SUCCESS;
			if(roll <= this.YUKO_CHANCE && roll > this.WAZA_CHANCE){
				self.yukos ++;
				this.SUCCESS = true;
			}
			else if(roll <= this.WAZA_CHANCE && roll > this.IPPON_CHANCE){
				self.wazaaris ++;
				this.SUCCESS = true;
			}
			else if(roll <= this.IPPON_CHANCE){
				self.ippons ++;
				this.SUCCESS = true;
			}else{
				Sound.HIT3.play(false);
			}
			if(SUCCESS) 
				Sound.HIT2.play(false);
		}else{
			Sound.HIT4.play(false);
			self.energy -= this.ENERGY_LOST_ON_FAILURE;
			roll = random.nextInt(100);
			if(roll < this.GRIB_BREAK_CHANCE && this.CAN_BREAK_GRIB){
				this.BROKE_GRIB = true;
			}
		}
	}