Mercurial > hg > Database > Alice
view src/alice/test/topology/movement/CheckFishLocation.java @ 91:19f3bd33277d working
add KeyInput
author | sugi |
---|---|
date | Tue, 05 Jun 2012 00:35:58 +0900 |
parents | |
children | 8e3c1217aad4 |
line wrap: on
line source
package alice.test.topology.movement; import java.util.regex.Matcher; import java.util.regex.Pattern; import alice.codesegment.CodeSegment; import alice.datasegment.CommandType; import alice.datasegment.Receiver; public class CheckFishLocation extends CodeSegment{ public Receiver nowX = ids.create(CommandType.PEEK); public Receiver host = ids.create(CommandType.PEEK); MakeFrame frame; MakeObject obj; Pattern pattern = Pattern.compile("^(cli)([0-9]+)$"); String myKey; public CheckFishLocation(MakeObject MO ,String str){ this.obj = MO; this.myKey = str; } @Override public void run(){ String name = host.asString(); Matcher matcher = pattern.matcher(name); matcher.find(); int num = new Integer(matcher.group(2)); float startX = 2*num - 3.0f; float endX = 2*num -0.9f; float x = (float)this.nowX.asInteger()/1000; System.out.println(myKey+": " + x); if (startX <= x && x < endX){ obj.setLocation(x - 2*(num-1), 0.1f*num); ods.update("parent", myKey, this.nowX.asInteger()+1); } CheckFishLocation cs = new CheckFishLocation(this.obj,this.myKey); cs.nowX.setKey("parent",myKey,this.nowX.index); cs.host.setKey("local","host"); } }