Добро пожаловать на форум, Гость, это ваша панель
  • Страница 1 из 2
  • 1
  • 2
  • »
Как сделать спрайт ауры под игроками?
kica
Дата: Понедельник, 09.07.2012, 07:53 | Сообщение # 1
офлайн

  • Сообщения: 216
  • Награды: 3
  • Замечания:
 
Как сделать спрайт под ногами у игроков?
Типо как в варкрафте у вас под ногами зелёный круг!
Каждой рассе свой спрайт пой ноги ну как на скрине только под ноги и каждой рассе свой цвет кружка ;DD




Прикрепления: 9796264.jpg (17.3 Kb) · 7857764.jpg (18.2 Kb) · 0738483.jpg (24.9 Kb)


Сообщение отредактировал kica - Понедельник, 09.07.2012, 08:03
 
runetov
Дата: Понедельник, 09.07.2012, 08:52 | Сообщение # 2
офлайн

  • Сообщения: 283
  • Награды: 8
  • Замечания:
 
Да было бы красиво!

 
Sasha13840
Дата: Понедельник, 09.07.2012, 09:04 | Сообщение # 3
офлайн

  • Сообщения: 384
  • Награды: 7
  • Замечания:
 
kica, Выложи эти спрайты всем :)

Добавлено (09.07.2012, 09:04)
---------------------------------------------
И на втором скрине вроде модель

 
adenking
Дата: Понедельник, 09.07.2012, 09:15 | Сообщение # 4
офлайн

  • Сообщения: 183
  • Награды: 0
  • Замечания:
 
kica, Супер!!!


Раскрути свой сервер!
 
faktor-dat
Дата: Понедельник, 09.07.2012, 12:34 | Сообщение # 5
офлайн

  • Сообщения: 67
  • Награды: 2
  • Замечания:
 
четко :)

 
kica
Дата: Вторник, 10.07.2012, 02:08 | Сообщение # 6
офлайн

  • Сообщения: 216
  • Награды: 3
  • Замечания:
 
Выложу! Они будут называтся Race_aura ;DD
Сейчас работаю над тем что бы они ещё и кружились.
Вот только как их сделать спрайтами или моделями вопрос...
Скачать - 2 спрайта _ RaceAura


Сообщение отредактировал kica - Вторник, 10.07.2012, 02:43
 
KinD
Дата: Вторник, 10.07.2012, 11:47 | Сообщение # 7
офлайн

  • Сообщения: 1148
  • Награды: 22
  • Замечания:
 
Могу дать код чтобы при выстреле была аура,а если всегда будет,то это нехило будет нагружать сервер.
32 человека,координаты вычислять для всех игроков,ужас.


Skype:daywerok
 
faktor-dat
Дата: Вторник, 10.07.2012, 12:01 | Сообщение # 8
офлайн

  • Сообщения: 67
  • Награды: 2
  • Замечания:
 
Вот... :) Может выглядит глупо но ето все на что я способен...(
Прикрепления: yellow.bmp (65.0 Kb) · red.bmp (64.6 Kb) · green.bmp (64.6 Kb)


 
KinD
Дата: Вторник, 10.07.2012, 12:28 | Сообщение # 9
офлайн

  • Сообщения: 1148
  • Награды: 22
  • Замечания:
 
Установка
Закинуть в constants.inl:

Code
new aura_sprites
new const aura_sprite[] = "sprites/warcraft3aura.spr"  //спр для рас.


Закинуть в папку war3ft inculde.
aura.inl

Прописать Include в .sma

#include "war3ft/aura.inl"

Пописать в events.inl. >>> client_damage( iAttacker, iVictim, iDamage, iWeapon, iHitPlace, TA )
Code

if(p_data[iAttacker][P_RACE]==RACE_UNDEAD)
     {
      undeadaura(iAttacker)
     }


в war3ft.inl
precache.

aura_sprites = precache_model(aura_sprite)

Как выглядит:

P.S немогу настроить нормальный радиус пока,получается слишком большой,кто захочет,тот сам сможет.
P.S.S аура активируется при любом попадании,работает бесконечно(в event_new round remove set_task)
Прикрепления: aura.inl (1.0 Kb) · 5354033.jpg (376.6 Kb)


Skype:daywerok

Сообщение отредактировал KinD - Вторник, 10.07.2012, 13:00
 
runetov
Дата: Вторник, 10.07.2012, 15:06 | Сообщение # 10
офлайн

  • Сообщения: 283
  • Награды: 8
  • Замечания:
 
KinD, Красавчик, жаль что спрайт большой cry

 
straj
Дата: Вторник, 10.07.2012, 21:51 | Сообщение # 11
офлайн

  • Сообщения: 424
  • Награды: 3
  • Замечания:
 
Quote (faktor-dat)
Вот... :) Может выглядит глупо но ето все на что я способен...(

Сам делал? Если да ,молодец.Симпотно.

Quote (runetov)
жаль что спрайт большой

Уменьшай размеры спрайта,до нужного размера.


Набор разработчиков в команду Alfa-Strike
Направления: CS1.6; L4d2; COD4; BF2; TF2.

http://forum.alfa-strike.net//index.php?showtopic=10920&pid=72247&st=0&#entry72247
 
KinD
Дата: Вторник, 10.07.2012, 22:14 | Сообщение # 12
офлайн

  • Сообщения: 1148
  • Награды: 22
  • Замечания:
 
straj, нет,не от спрайта зависит,а от кода(в моем коде подержка RGB цвета и Размер.
У меня пока нету времени чтобы оптимизировать до конца код,тому кто оптимизирует молодцы.
Чтобы была типо ауры,нужно перевернуть спрайт.


Skype:daywerok
 
faktor-dat
Дата: Среда, 11.07.2012, 07:46 | Сообщение # 13
офлайн

  • Сообщения: 67
  • Награды: 2
  • Замечания:
 
KinD, Скажи как уменьшить радиус,чет я недопер...(

 
runetov
Дата: Среда, 11.07.2012, 07:58 | Сообщение # 14
офлайн

  • Сообщения: 283
  • Награды: 8
  • Замечания:
 
straj Я согласен с KinD'om у меня тоже такое было только на всю карту, решения пока не нашел! cry

faktor-dat, Он же написал
Code
У меня пока нету времени чтобы оптимизировать до конца код.


 
KinD
Дата: Среда, 11.07.2012, 11:03 | Сообщение # 15
офлайн

  • Сообщения: 1148
  • Награды: 22
  • Замечания:
 
engfunc(EngFunc_WriteCoord, flOrigin[2]+ 100)
write_short(aura_sprites) // sprite
,будет радиус,но координаты по оси будут,тоесть эфект будет не такой.Обычный зелененький(зависит от смена RGB,задержка по координатам будет.(будете бежать,взади вас появлятся эфект,а не в ваших ногах)


Skype:daywerok

Сообщение отредактировал KinD - Среда, 11.07.2012, 11:05
 
KinD
Дата: Суббота, 14.07.2012, 17:40 | Сообщение # 16
офлайн

  • Сообщения: 1148
  • Награды: 22
  • Замечания:
 
Выглядит теперь примерно вот так:


Code
public aura(iAttacker)
{
      new Attackerorigin[3]      
      get_user_origin( iAttacker, Attackerorigin )
      Create_TE_SPRITE( Attackerorigin, g_iSprites[SPR_AURA], 8, 200 );
      set_task(1.0,"aura",iAttacker);
}


Code
message_begin( MSG_BROADCAST,SVC_TEMPENTITY )
write_byte( TE_SPRITE )
write_coord( position[0] )  // позиция
write_coord( position[1] )
write_coord( position[2] )
write_short( iSprite )   // индекс спрайта
write_byte( scale)    // размер
write_byte( alpha )    // яркость
message_end()
Прикрепления: 7204210.jpg (249.8 Kb)


Skype:daywerok

Сообщение отредактировал KinD - Суббота, 14.07.2012, 19:16
 
runetov
Дата: Суббота, 14.07.2012, 21:05 | Сообщение # 17
офлайн

  • Сообщения: 283
  • Награды: 8
  • Замечания:
 
Это все также остается?

Установка
Закинуть в constants.inl:

new aura_sprites
new const aura_sprite[] = "sprites/warcraft3aura.spr" //спр для рас.

Закинуть в папку war3ft inculde.
aura.inl

Прописать Include в .sma

#include "war3ft/aura.inl"

Пописать в events.inl. >>> client_damage( iAttacker, iVictim, iDamage, iWeapon, iHitPlace, TA )

if(p_data[iAttacker][P_RACE]==RACE_UNDEAD)
{
undeadaura(iAttacker)
}

в war3ft.inl
precache.

aura_sprites = precache_model(aura_sprite)




Сообщение отредактировал runetov - Суббота, 14.07.2012, 21:06
 
KinD
Дата: Суббота, 14.07.2012, 21:23 | Сообщение # 18
офлайн

  • Сообщения: 1148
  • Награды: 22
  • Замечания:
 
Нет конешно,разный код.
в констант нужно #define SPR_AURA ...

в прекэше по другому(как остальные спрайты от war3ft).

Замена кода из aura.inl.

P.S даже с готовым кодом,вы ничего сделать не можете,хотябы пытайтесь что-то сделать,а не писать "КУДА ЭТА ВСТАВЛЯТЬ"


Skype:daywerok
 
runetov
Дата: Суббота, 14.07.2012, 22:55 | Сообщение # 19
офлайн

  • Сообщения: 283
  • Награды: 8
  • Замечания:
 
---------------------------------------------
У меня не показывает спрайт эта тема может помешать?




Сообщение отредактировал runetov - Суббота, 14.07.2012, 22:56
 
KinD
Дата: Суббота, 14.07.2012, 23:15 | Сообщение # 20
офлайн

  • Сообщения: 1148
  • Награды: 22
  • Замечания:
 
Нет,у меня запилено это все,а вообще,просто в
case UNDEAD:
закинь aura(iAttacker) тоесть.

Code
case UNDEAD:
{
             spritetrail....(код)
             aura(iAttacker)
}

Либо вариант 90%,что твои косяки.

Добавлено (14.07.2012, 23:15)
---------------------------------------------
Закомментированные строки не трогай.

Code
public fRaceShots(iAttacker,iVictim)
{
  if(p_data[iAttacker][P_RACE]==RACE_UNDEAD)
  {

   //Create_TE_SPRITETRAIL( vAttackerorigin, vVictimOrigin, g_iSprites[SPR_SHOT_RACE_UNDEAD], 15, 15, 1, 2, 6 )
   //Create_TE_IMPLOSION( vAttackerorigin, 100, 20, 5 );
   //Create_TE_EXPLOSION( vAttackerorigin, vAttackerorigin, g_iSprites[SPR_AURA], (random_num(0,10) + 10), 1, TE_EXPLFLAG_NONE );
   set_task(1.0,"aura",iAttacker);
    
    
  }
}


Code
public aura(iAttacker)
{
  new vAttackerorigin[3]  
  get_user_origin( iAttacker, vAttackerorigin )
  //client_cmd(iAttacker,"stopsound")
  //Create_TE_EXPLOSION( vAttackerorigin, vAttackerorigin, g_iSprites[SPR_AURA], (random_num(0,10) + 10), 1, TE_EXPLFLAG_NONE );
  Create_TE_SPRITE( vAttackerorigin, g_iSprites[SPR_AURA], 8, 200 );
  set_task(0.09,"aura",iAttacker);
}


Skype:daywerok
 
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск: