SphereCommunity
Roomdef error on @regionenter - Printable Version

+- SphereCommunity (https://forum.spherecommunity.net)
+-- Forum: Sphere 0.56d (/Forum-Sphere-0-56d)
+--- Forum: Script Help (/Forum-Script-Help)
+--- Thread: Roomdef error on @regionenter (/Thread-Roomdef-error-on-regionenter)



Roomdef error on @regionenter - Rizz - 06-24-2014 09:10 AM

After my sphere version update, when i trigger @RegionEnter entering into a ROOMDEF i get this:

PHP Code:
ON=@RegionEnter
src
.message <argo.defname

PHP Code:
01:05:ERROR:(events_pg.scp,820)Can't resolve <argo.defname> 


How to check if i'm entering an AREADEF or ROOMDEF?


RE: Roomdef error on @regionenter - Rizz - 06-24-2014 07:12 PM

I think the problem is related to the missing defname definition for ROOMDEF. That's why i need to check if i'm entering an aeradef or roomdef in order to restrict the code and avoid the error.


RE: Roomdef error on @regionenter - Coruja - 06-25-2014 04:00 AM

try using <ARGO.REGION.DEFNAME> or <ARGO.REGION.REGION.DEFNAME> (double REGION will make you get the AREADEF reference instead ROOMDEF)

also if you're using @RegionEnter just to check a few regions, you can use @Enter directly on the AREADEF instead use @RegionEnter on chars


RE: Roomdef error on @regionenter - Rizz - 06-25-2014 06:22 AM

Nothing.
I also tried <src.region.defname> but it returns the leaving region.

Is there noway to detect a roomdef?
In that way i could use

If !<roomdef>
argo.defname
endif

Right now, the solutions are:

1) move everything under @enter as you suggested
2) leave the code under @regionenter, mark the interesting regions with a tag then check that tag first under @regionenter


RE: Roomdef error on @regionenter - darksun84 - 06-25-2014 07:21 AM

<room> it returns 1 when you enter in a "room-region", 0 otherwise.

Anyway, you can't access the room defname but just its other properties :\ .

Edit : <room> and <room.properties> works weird in @regionenter


RE: Roomdef error on @regionenter - Rizz - 06-25-2014 08:28 AM

(06-25-2014 07:21 AM)darksun84 Wrote:  <room> it returns 1 when you enter in a "room-region", 0 otherwise.

Anyway, you can't access the room defname but just its other properties :\ .

Edit : <room> and <room.properties> works weird in @regionenter

I don't need the room defname, i just need to know if i'm entering a room to don't cheack the defname and don't generate the error.

(06-25-2014 07:21 AM)darksun84 Wrote:  Edit : <room> and <room.properties> works weird in @regionenter


Yes... <room> under @regionenter is referred to the area that your are leaving.

<argo.room> doesn't work


RE: Roomdef error on @regionenter - Skul - 06-25-2014 09:00 AM

just to be sure, have you tried
Code:
<uid.<argo.uid>.defname>
sometimes sphere has problems reading from argo and uid is needed.


RE: Roomdef error on @regionenter - Rizz - 06-25-2014 09:29 AM

(06-25-2014 09:00 AM)Skul Wrote:  just to be sure, have you tried
Code:
<uid.<argo.uid>.defname>
sometimes sphere has problems reading from argo and uid is needed.

Not working Sad


RE: Roomdef error on @regionenter - Rizz - 06-28-2014 08:47 AM

I found a solution.
I compiled a small .exe program to add under every [ROOMDEF] a string (like TAG.ISROOM=1 or whatever you like].

Now i can properly check if i'm entering a room or not:

PHP Code:
ON=@REGIONENTER
IF (!<argo.TAG0.ISROOM>)
src.message <argo.defname>
ENDIF 

If this exe could be usefull to someone i can share it.