Добавлен  NatriY 
                            
                            
                            
                            
                            
                            
                        
                        
                    Функция не возвращает юнита. Снизу код с самой функцией и там, где она вызывается. В самой функции юнит есть, а в возвращённом значении уже нет. В чем проблема?
static method getFreePlayerCircle takes int playerid returns unit
   int j = 0
   unit u = null
   loop
      exitwhen j == 8
      u = playerCircles[playerid][j]
      if GetUnitUserData(u) == 0{
         BJDebugMsg("inside "+I2S(GetHandleId(u)))
         return u
      }
      j += 1
   endloop
   
   return null
endmethod
unit playerCircle = getFreePlayerCircle(playerid)
BJDebugMsg("outside: "+I2S(GetHandleId(playerCircle)))
addUnitToPlayerCircle(spell_u, playerCircle)
На скрине срабатывание этого кода.
Принятый ответ
 Загруженные файлы
        
    
    
        
            
                `
            
            
                
        
    
    ОЖИДАНИЕ РЕКЛАМЫ...
            
                    
                        Чтобы оставить комментарий, пожалуйста, войдите на сайт.
                    
                
            
                                WC3
                            





Ред. MpW
и снаружи unit playerCircle = getFreePlayerCircle(playerid)
а ну да, все норм вроде бы, показалось что одноименные заюзаны
Ред. biridius