Nick,
This expression works for your example below:
if(#P("POLYGON")==#SI("EL1 Floor Polygon","FLOOR","POLYGON"))
then 1.85
else 1.50
endif
However, the expression references the POLYGON of the floor, not the NAME of the floor.
If you try the expression below, you get an error "Invalid BDL Keyword function argument 'NAME'"
if(#P("NAME")==#SI("1STFLOORNAME","FLOOR","NAME"))
then 1.85
else 1.50
endif
You can add comments to the expression to label the cases with floor names, but the expression is still based on the occurrence number of the FLOOR:
switch #SV(#PS())
case 1 : 1.85 $ IceRink Floor 1
case 2 : 1.5 $ IceRink Floor 2
default : 1.0
endswitch
~Bill