<commit_before>package org.jtrfp.trcl.objects;

import org.jtrfp.trcl.Model;
import org.jtrfp.trcl.ai.AccelleratedByPropulsion;
import org.jtrfp.trcl.ai.AutoLeveling;
import org.jtrfp.trcl.ai.BouncesOffSurfaces;
import org.jtrfp.trcl.ai.ChaseBehavior;
import org.jtrfp.trcl.ai.CollidesWithTerrain;
import org.jtrfp.trcl.ai.DamageableBehavior;
import org.jtrfp.trcl.ai.ExplodesOnDeath;
import org.jtrfp.trcl.ai.HasPropulsion;
import org.jtrfp.trcl.ai.LoopingPositionBehavior;
import org.jtrfp.trcl.ai.MovesByVelocity;
import org.jtrfp.trcl.ai.RotationalDragBehavior;
import org.jtrfp.trcl.ai.RotationalMomentumBehavior;
import org.jtrfp.trcl.ai.TerrainLocked;
import org.jtrfp.trcl.ai.VelocityDragBehavior;
import org.jtrfp.trcl.core.TR;
import org.jtrfp.trcl.file.DEFFile.EnemyDefinition;
import org.jtrfp.trcl.file.DEFFile.EnemyDefinition.EnemyLogic;
import org.jtrfp.trcl.objects.Explosion.ExplosionType;

public class DEFObject extends WorldObject {
public DEFObject(TR tr,Model model, EnemyDefinition def){
    super(tr,model);
    final EnemyLogic logic = def.getLogic();
    System.out.println(logic);
    boolean mobile=true;
    boolean groundLocked=false;
    switch(logic){
    	case groundDumb:
    	    mobile=false;
    	    break;
    	case groundTargeting:
    	    mobile=false;
    	    break;
    	case flyingDumb:
    	    mobile=false;
    	    break;
    	case groundTargetingDumb:
    	    groundLocked=true;
    	    break;
    	case flyingSmart:
    	    break;
    	case bankSpinDrill:
    	    break;
    	case sphereBoss:
    	    mobile=true;
    	    break;
    	case flyingAttackRetreatSmart:
    	    break;
    	case splitShipSmart:<commit_msg>Fixed immobilized crab in WATER.LVL, probably other bugs involving Logic #1.<commit_after>package org.jtrfp.trcl.objects;

import org.jtrfp.trcl.Model;
import org.jtrfp.trcl.ai.AccelleratedByPropulsion;
import org.jtrfp.trcl.ai.AutoLeveling;
import org.jtrfp.trcl.ai.BouncesOffSurfaces;
import org.jtrfp.trcl.ai.ChaseBehavior;
import org.jtrfp.trcl.ai.CollidesWithTerrain;
import org.jtrfp.trcl.ai.DamageableBehavior;
import org.jtrfp.trcl.ai.ExplodesOnDeath;
import org.jtrfp.trcl.ai.HasPropulsion;
import org.jtrfp.trcl.ai.LoopingPositionBehavior;
import org.jtrfp.trcl.ai.MovesByVelocity;
import org.jtrfp.trcl.ai.RotationalDragBehavior;
import org.jtrfp.trcl.ai.RotationalMomentumBehavior;
import org.jtrfp.trcl.ai.TerrainLocked;
import org.jtrfp.trcl.ai.VelocityDragBehavior;
import org.jtrfp.trcl.core.TR;
import org.jtrfp.trcl.file.DEFFile.EnemyDefinition;
import org.jtrfp.trcl.file.DEFFile.EnemyDefinition.EnemyLogic;
import org.jtrfp.trcl.objects.Explosion.ExplosionType;

public class DEFObject extends WorldObject {
public DEFObject(TR tr,Model model, EnemyDefinition def){
    super(tr,model);
    final EnemyLogic logic = def.getLogic();
    System.out.println(logic);
    boolean mobile=true;
    boolean groundLocked=false;
    switch(logic){
    	case groundDumb:
    	    mobile=false;
    	    break;
    	case groundTargeting:
    	    mobile=true;
    	    groundLocked=true;
    	    break;
    	case flyingDumb:
    	    mobile=false;
    	    break;
    	case groundTargetingDumb:
    	    groundLocked=true;
    	    break;
    	case flyingSmart:
    	    break;
    	case bankSpinDrill:
    	    break;
    	case sphereBoss:
    	    mobile=true;
    	    break;
    	case flyingAttackRetreatSmart:
    	    break;
    	case splitShipSmart:
{'fraction_non_alphanumeric': 0.09413131900058105, 'fraction_numerical': 0.0002905287623474724, 'mean_word_length': 3.548216644649934, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7552910', 'n_tokens_mistral': 1295, 'n_tokens_neox': 1268, 'n_words': 196}