Archived copy of war3source.com, the War3Source forum (2009–2020), rebuilt from the Internet Archive by wc3mods.net. This page was captured on 2012-10-25 (original capture). Forum · All archived topics · Wiki · Bug tracker · Blog
Chat

War3:Source
October 24, 2012, 07:01:58 PM *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
News: Download: http://war3source.com/index.php?board=9.0
What is War3Source?: http://war3source.com/index.php?topic=200.0
Sample Stats: http://war3source.com/war3stats
Steam Community Group: http://steamcommunity.com/groups/war3source
War3Source SVN Checkout: http://ownageclan.com/svn/war3source/
War3Source servers: http://www.game-monitor.com/search.php?vars=war3_version=
 
   Home   Help Search Login Register  
Pages: [1]
  Print  
Author Topic: [Russian] Временная прибавка хп  (Read 370 times)
Divix
Sr. Member
****
Posts: 280


View Profile Email
« on: June 09, 2011, 10:01:38 AM »

Как сделать временную прибавку хп ? (только так, чтобы после окончания эффекта возвращало старые хп, а не 100)
Code:
public OnAbilityCommand(client,ability,bool:pressed)
{
if(War3_GetRace(client)==thisRaceID && ability==0 && pressed && IsPlayerAlive(client))
{
new skill_level=War3_GetSkillLevel(client,thisRaceID,SKILL_HP);
if(skill_level>0)
{
if(War3_SkillNotInCooldown(client,thisRaceID,SKILL_HP,true)&&!Silenced(client))
{
for (new i=1;i<=MaxClients;i++)
{
if(ValidPlayer(i,true)&&IsPlayerAlive(i))
{
if(i>0 && !W3HasImmunity(i,Immunity_Ultimates))
{
if(!Silenced(client))
{
bHealth[i]=true;
CreateTimer(HealthDuration[skill_level],healthoff,i);
}
}
}
}
}
}
}
}

public Action:healthoff(Handle:timer, any:client)
{

bHealth1[client]=false;

}

public OnGameFrame()
{
for(new i=0;i<=MaxClients;i++)
{
if(ValidPlayer(i,true)&&War3_GetRace(i)==thisRaceID)
{
for(new y=0;y<=MaxClients;y++)
{
if(ValidPlayer(y,true)&&GetClientTeam(y)==GetClientTeam(i))
{
new old_health=GetClientHealth(y);
if(bHealth[y]==true)
{
SetEntityHealth(y,400);
}
if(bHealth1[y]==false)
{
SetEntityHealth(y,old_health);
}
}
}
}
}
}
- Вот такой маразм вышел у меня после многих попыток Sad
Logged
Frenzzy
Moderator
Full Member
*****
Posts: 217


337905984 frenzzy@live.ru
View Profile WWW
« Reply #1 on: June 09, 2011, 06:25:05 PM »

OnGameFrame()

..что-то я не понял ты делаешь неуязвимого киборга с не уменьшаемыми 400 хп, или тебе нужно один раз добавить к здоровью 300хп а потом забрать если их больше 100?
Logged

O_o
Divix
Sr. Member
****
Posts: 280


View Profile Email
« Reply #2 on: June 10, 2011, 05:20:30 AM »

Если честно, то я не понимаю OnGameFrame()..  Grin
Да... В принципе задумка такая: сделать абилити, которая на определенной дистанции дает временно хп
Logged
Frenzzy
Moderator
Full Member
*****
Posts: 217


337905984 frenzzy@live.ru
View Profile WWW
« Reply #3 on: June 15, 2011, 10:38:13 PM »

Посмотри как сделано в расе Paladin, там именно так и работает.
Logged

O_o
Divix
Sr. Member
****
Posts: 280


View Profile Email
« Reply #4 on: June 16, 2011, 03:02:21 AM »

В паладине ульта с этим вообще не работает if((overdriveCharge[client]>=100)... А где в нем хп увеличиваются ? Оо
Logged
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.11 | SMF © 2006-2009, Simple Machines LLC Valid XHTML 1.0! Valid CSS!