Ejemplo n.º 1
0
void IBActionDef_UnblockProp::Define()
{
	AddVariable("Obj");    // BLObject
	AddVariable("ObjPos"); // IBVector2
	AddVariable("Dist");   // IBInt = 1

	AddPreCondition("IBFactDef_BotNearPos", "ObjPos", "Dist");
	AddPreCondition("IBFactDef_PropIsBlock", "Obj");

	AddPostCondition("IBFactDef_PropIsUnblock", "Obj");
}
Ejemplo n.º 2
0
void IBActionDef_PushProp::Define()
{
	AddVariable("Obj");    // BLObject
	AddVariable("PushPos"); // IBVector2
	AddVariable("ObjPos"); // IBVector2
	AddVariable("DestPos"); // IBVector2
	AddVariable("Dist");   // IBInt = 0

	AddPreCondition("IBFactDef_PosIsFree", "DestPos");
	AddPreCondition("IBFactDef_ObjectAtPos", "Obj", "ObjPos");
	AddPreCondition("IBFactDef_PropIsMovable", "Obj");
	AddPreCondition("IBFactDef_BotNearPos", "PushPos", "Dist");
	AddPreCondition("IBFactDef_PosIsFree", "PushPos");

	AddPostCondition("IBFactDef_ObjectAtPos", "Obj", "DestPos");
	AddPostCondition("IBFactDef_PosIsFree", "ObjPos");

	AddCounterPostCondition("IBFactDef_PosIsFree", "DestPos");
}
Ejemplo n.º 3
0
void IBActionDef_BoolToBool::Define()
{
	AddPreCondition("IBFactDef_Bool", true, "VarIn");
	AddPostCondition("IBFactDef_Bool", true, "VarOut");
}