Сейчас 07:38:55 Пятница, 29 марта, 2024 год
[ x ] Главная ⇒ Форум ⇐ RSS Файлы Cтатьи Картинки В о й т и   или   з а р е г и с т р и р о в а т ь с я


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: PUVer, SirNikolas, Ty3uK  
Форум о Warcraft 3 » Раздел для картостроителей » Вопросы по картостроению » Подскажите про утечку
Подскажите про утечку
sacar666Дата: Воскресенье, 16 Августа 2015, 23:57:01 | Сообщение # 1
1 уровень
Группа: Пользователи
Сообщений: 7
Награды: 0
Репутация: 0
Блокировки:
function Trig_TP_Actions takes nothing returns nothing
local unit u = GetBuyingUnit()
local location p

if ( GetItemTypeId(GetSoldItem()) == 'I000' ) then
set p = GetRectCenter(gg_rct_Dalara)
endif
if ( GetItemTypeId(GetSoldItem()) == 'I001' ) then
set p = GetRectCenter(gg_rct_Kalimdor)
endif

call SetUnitPositionLoc(u, p)
set u = null
call RemoveLocation(p)
endfunction
[/code]

Есть ли тут утечка?
 

ArtFoxДата: Понедельник, 17 Августа 2015, 04:55:56 | Сообщение # 2
1 уровень
Группа: Пользователи
Сообщений: 5
Награды: 0
Репутация: 2
Блокировки:
Тут есть даже вши и стопы.
 

sacar666Дата: Понедельник, 17 Августа 2015, 05:26:40 | Сообщение # 3
1 уровень
Группа: Пользователи
Сообщений: 7
Награды: 0
Репутация: 0
Блокировки:
ArtFox, Подскажите где и как их убрать?
 

SreziДата: Понедельник, 17 Августа 2015, 09:27:57 | Сообщение # 4
7 уровень
Группа: Проверенные
Сообщений: 414
Награды: 0
Репутация: 116
Блокировки:
set p=null

Нет места чести на войне,
Враг церемониться не будет,
Убей его любым путём,
Ведь победителей не судят.
 

KaotikaДата: Понедельник, 17 Августа 2015, 09:33:59 | Сообщение # 5
5 уровень
Группа: Проверенные
Сообщений: 144
Награды: 0
Репутация: 20
Блокировки:
Код
function ACTION takes nothing returns nothing
     local unit u = GetBuyingUnit()
     local integer i = GetItemTypeId(GetSoldItem())
     local real x
     local real y

     if i == 'I000' then
         set x = GetRectCenterX(gg_rct_Dalara)
         set y = GetRectCenterY(gg_rct_Dalara)
     elseif i == 'I001' then
         set x = GetRectCenterX(gg_rct_Kalimdor)
         set y = GetRectCenterY(gg_rct_Kalimdor)
     endif

     call SetUnitX( u, x )
     call SetUnitY( u, y )

     set u = null
endfunction


Тискаю клаву... остальных пока некогда!


Сообщение отредактировал Kaotika - Понедельник, 17 Августа 2015, 09:34:40
 

ArtFoxДата: Понедельник, 17 Августа 2015, 13:57:46 | Сообщение # 6
1 уровень
Группа: Пользователи
Сообщений: 5
Награды: 0
Репутация: 2
Блокировки:
Код
function Trig_TP_Actions takes nothing returns nothing
     local unit u = GetBuyingUnit()
     local integer lID = GetItemTypeId(GetSoldItem())
     if lID == 'I000' then
         call SetUnitX(u,GetRectCenterX(gg_rct_Dalara))
         call SetUnitY(u,GetRectCenterY(gg_rct_Dalara))
     elseif lID == 'I001' then
         call SetUnitX(u,GetRectCenterX(gg_rct_Kalimdor))
         call SetUnitY(u,GetRectCenterY(gg_rct_Kalimdor))
      endif
      set u = null
endfunction

Добавлено (17 Августа 2015, 13:57:46)
---------------------------------------------
Лучше всего вот так:

Код
function Trig_TP_Actions takes nothing returns nothing
      local unit u = GetBuyingUnit()
      local integer lID = GetItemTypeId(GetSoldItem())
      if lID == 'I000' then
          call SetUnitX(u,GetRectCenterX(gg_rct_Dalara))
          call SetUnitY(u,GetRectCenterY(gg_rct_Dalara))
      elseif lID == 'I001' then
          call SetUnitX(u,GetRectCenterX(gg_rct_Kalimdor))
          call SetUnitY(u,GetRectCenterY(gg_rct_Kalimdor))
     endif
     set u = null
     return
endfunction
 

KaotikaДата: Понедельник, 17 Августа 2015, 15:02:12 | Сообщение # 7
5 уровень
Группа: Проверенные
Сообщений: 144
Награды: 0
Репутация: 20
Блокировки:
Цитата ArtFox ()
Лучше всего вот так:

Я немного не понимаю зачем ставить в конце функции RETURN ?


Тискаю клаву... остальных пока некогда!


Сообщение отредактировал Kaotika - Понедельник, 17 Августа 2015, 15:02:59
 

[SeKtOR]Дата: Понедельник, 17 Августа 2015, 19:52:05 | Сообщение # 8
Группа: Проверенные
Сообщений: 1143
Награды: 0
Репутация: 1168
Блокировки:
Цитата Kaotika ()
Я немного не понимаю зачем ставить в конце функции RETURN ?

Кто знает...


 

-=FoX=-Дата: Понедельник, 17 Августа 2015, 20:02:06 | Сообщение # 9
1 уровень
Группа: Пользователи
Сообщений: 10
Награды: 0
Репутация: 0
Блокировки:
В разделе Джасс, в одном единственном месте есть ответ.
 

sacar666Дата: Среда, 19 Августа 2015, 05:05:58 | Сообщение # 10
1 уровень
Группа: Пользователи
Сообщений: 7
Награды: 0
Репутация: 0
Блокировки:
Спасибо большое.
 

Форум о Warcraft 3 » Раздел для картостроителей » Вопросы по картостроению » Подскажите про утечку
  • Страница 1 из 1
  • 1
Поиск:

Copyright © 2006 - 2024 Warcraft3FT.info При копировании материалов c сайта ставьте, пожалуйста, активную обратную ссылку на нас • Design by gReeB04ki ©
Хостинг от uCoz