(50c0271)
[carveJwlIkooP6JGAAIwe30JlM.git] / ent_relay.c
index 50bbeabf690429b442e4d3043de67bf1c655d214..1f97584af5843f1b0384a73f9dde4bfc3be5339b 100644 (file)
@@ -1,13 +1,16 @@
 #include "ent_relay.h"
 
-void ent_relay_call( world_instance *world, ent_call *call )
+entity_call_result ent_relay_call( world_instance *world, ent_call *call )
 {
    u32 index = mdl_entity_id_id( call->id );
    ent_relay *relay = mdl_arritm( &world->ent_relay, index );
 
-   if( call->function == 0 ){
-      for( u32 i=0; i<vg_list_size(relay->targets); i++ ){
-         if( relay->targets[i][0] ){
+   if( call->function == 0 )
+   {
+      for( u32 i=0; i<vg_list_size(relay->targets); i++ )
+      {
+         if( relay->targets[i][0] )
+         {
             ent_call call;
             call.data = NULL;
             call.function = relay->targets[i][1];
@@ -15,9 +18,8 @@ void ent_relay_call( world_instance *world, ent_call *call )
             entity_call( world, &call );
          }
       }
+      return k_entity_call_result_OK;
    }
-   else {
-      vg_print_backtrace();
-      vg_error( "Unhandled function id: %u\n", call->function );
-   }
+   else 
+      return k_entity_call_result_unhandled;
 }