forked from Mirrors/openclonk
Add user actions evaluators: Object/Player count
parent
ab954f65a8
commit
d8b488aa98
|
@ -251,6 +251,8 @@ func Definition(def)
|
|||
PositionA = new Evaluator.Position { Name="$PositionA$", EditorHelp="$PositionAHelp$" },
|
||||
PositionB = new Evaluator.Position { Name="$PositionB$", EditorHelp="$PositionBHelp$" }
|
||||
} } );
|
||||
AddEvaluator("Integer", nil, "$NumberOfObjects$", "$NumberOfObjectsHelp$", "object_count", [def, def.EvalCount, "ObjectList"], { }, new Evaluator.ObjectList { }, "Array");
|
||||
AddEvaluator("Integer", nil, "$NumberOfPlayers$", "$NumberOfPlayersHelp$", "player_count", [def, def.EvalCount, "PlayerList"], { }, new Evaluator.PlayerList { }, "Array");
|
||||
// String evaluators
|
||||
AddEvaluator("String", nil, ["$Constant$", ""], "$ConstantHelp$", "string_constant", [def, def.EvalConstant], { Value="" }, { Type="string", Name="$Value$" });
|
||||
AddEvaluator("String", nil, ["$ValueToString$", ""], "$ValueToStringHelp$", "value_to_string", [def, def.EvalStr_ValueToString], { }, new Evaluator.Any { });
|
||||
|
@ -511,6 +513,12 @@ private func EvalObj_LastCreatedObject(proplist props, proplist context) { retur
|
|||
private func EvalPlr_Trigger(proplist props, proplist context) { return context.triggering_player; }
|
||||
private func EvalPlrList_Single(proplist props, proplist context, fn) { return [Call(fn, props, context)]; }
|
||||
|
||||
private func EvalCount(proplist props, proplist context, data_type)
|
||||
{
|
||||
var list = EvaluateValue(data_type, props.Array, context);
|
||||
if (list) return GetLength(list); else return 0;
|
||||
}
|
||||
|
||||
private func EvalObjList_FindObjectsInArea(proplist props, proplist context, bool find_one)
|
||||
{
|
||||
var params = Find_And(), np=1;
|
||||
|
|
|
@ -239,3 +239,7 @@ FindObjectInArea=Objekt im Bereich
|
|||
FindObjectInAreaHelp=Findet ein Objekt in einem Bereich der Landschaft.
|
||||
FindObjectInContainer=Inhaltsobjekt
|
||||
FindObjectInContainerHelp=Findet ein Objekt, das in einem anderen Objekt enthalten sind. Zum Beispiel Inventarobjekte, Objekte in Kisten oder Clonks in Flugzeugen.
|
||||
NumberOfObjects=Anzahl Objekte
|
||||
NumberOfObjectsHelp=Anzahl der Elemente in einer Objektliste. Die Objektliste wird als Funktion angegeben.
|
||||
NumberOfPlayers=Anzahl Spieler
|
||||
NumberOfPlayersHelp=Anzahl Spieler in einer Spielerliste. Die Spielerliste wird als Funktion angegeben.
|
||||
|
|
|
@ -239,3 +239,7 @@ FindObjectInArea=Object in area
|
|||
FindObjectInAreaHelp=Finds and object in a given area of the landscape.
|
||||
FindObjectInContainer=Contained object
|
||||
FindObjectInContainerHelp=Finds a contained object of a given type in a container.
|
||||
NumberOfObjects=Number of objects
|
||||
NumberOfObjectsHelp=Number of elements in an object list. The object list is given as a function.
|
||||
NumberOfPlayers=Number of players
|
||||
NumberOfPlayersHelp=Number of players in a player list. The player list is given as a function.
|
||||
|
|
Loading…
Reference in New Issue