Добро пожаловать на форум, Гость, это ваша панель
  • Страница 1 из 1
  • 1
Предмет+Предмет=Предмет 2
Moder
Дата: Вторник, 24.07.2012, 21:07 | Сообщение # 1
офлайн

  • Сообщения: 37
  • Награды: 0
  • Замечания:
 
Добрый вечер. Подскажите можно ли сделать так, если ты 2 раза купил когти, то они превращаються в другой итем, допустим Меч
 
KinD
Дата: Вторник, 24.07.2012, 21:35 | Сообщение # 2
офлайн

  • Сообщения: 1148
  • Награды: 22
  • Замечания:
 
Самому то не смешно?
Плагиат опять.
Делай когти charge,если g_ClawsCharges ==2,то удаляй их из предмета и выдавай свой "Меч"

Как удалять из предмета:

Code
if ( g_iShopMenuItems[idUser][ITEM_SLOT_ONE] > ITEM_NONE )
  {
   ITEM_Remove( idUser, ITEM_SLOT_ONE, false );
  }


Нужно найти,в каком слоте находится Claws.

Выдать предмет:

ITEM_GiveItem( idUser, 14 ); // 14 - это gloves.

Сделать новый предмет(к примеру: ITEM_SWORD 18.
Как я понял,тебе нужен двойной урон и прочее(нужно заюзать :FwdTakeDamage)

Больше не буду писать,хотя я думаю ты ничего отсюда не сделаешь(без "сюда вставить,зайти туда-то туда-то)

Тема не правильно оформлена.


Skype:daywerok
 
Moder
Дата: Вторник, 24.07.2012, 22:10 | Сообщение # 3
офлайн

  • Сообщения: 37
  • Награды: 0
  • Замечания:
 
KinD, я понял, но к сожалению я недавно начал кодить для вар3фт, можно с кодом? А так я программист по пхп..
 
KinD
Дата: Вторник, 24.07.2012, 22:16 | Сообщение # 4
офлайн

  • Сообщения: 1148
  • Награды: 22
  • Замечания:
 
Я приведу код,что ты с ним делать будешь?

Skype:daywerok
 
Moder
Дата: Вторник, 24.07.2012, 22:19 | Сообщение # 5
офлайн

  • Сообщения: 37
  • Награды: 0
  • Замечания:
 
Разбираться в нем, вникать и делать то что хотел
 
KinD
Дата: Вторник, 24.07.2012, 22:47 | Сообщение # 6
офлайн

  • Сообщения: 1148
  • Награды: 22
  • Замечания:
 
Вот пример предмета,чтобы урон был в 2 раза сильнее.
Можно и через client_damage,но я использую FmdTakeDamage.

Вот сам предмет:

Code
public FwdTakeDamage(victim, inflictor, attacker, Float:damage, damage_bits)
{
if ( ITEM_Has( attacker, ITEM_SWORD ) > ITEM_NONE )
{
SetHamParamFloat(4,(damage*2.0)) // урон умножается на два

}
return HAM_HANDLED
}

#define ITEM_SWORD   18,увеличиваешь число MAX_ITEMS на +1.(работа в Items.h)

if (g_iClawsCharges[idUser]==2)
{
ITEM_GiveItem( idUser, ITEM_SWORD );
}

//P.S можно обойтись без удаления предметов,т.к при выдаче нового предмета

CanBuy:

Code

//обозначает,что если у игрока  2 заряда и этот предмет CLAWS,то ты не можешь покупать больше.
else if ( g_iClawsCharges[idUser] == 2 && iItem == ITEM_CLAWS )

    {
     client_print( idUser, print_center, "%L", LANG_PLAYER, "YOU_SWORD_ITEM" );

     return false;//блочим выдачу.
    }


Code
RegisterHam(Ham_TakeDamage, "player", "FwdTakeDamage", 0)


Описывать,как сделать по зарядам(типо как шлем и ожерелье мне лень,но просто там)


Skype:daywerok

Сообщение отредактировал KinD - Вторник, 24.07.2012, 22:47
 
Contra63
Дата: Вторник, 24.07.2012, 22:48 | Сообщение # 7
офлайн

  • Сообщения: 830
  • Награды: 7
  • Замечания:
 
Moder, Тебе дали уже готовый алгоритм. Осталось все это правильно написать.
Готовы код не дадут. Только за $$$.


 
Moder
Дата: Вторник, 24.07.2012, 22:51 | Сообщение # 8
офлайн

  • Сообщения: 37
  • Награды: 0
  • Замечания:
 
Вот с этим разобрался CanBuy:, но с выше написанным туговато идет
 
KinD
Дата: Среда, 25.07.2012, 01:00 | Сообщение # 9
офлайн

  • Сообщения: 1148
  • Награды: 22
  • Замечания:
 
FMDtakeDamage событие получение урона.

Skype:daywerok
 
Moder
Дата: Четверг, 26.07.2012, 20:43 | Сообщение # 10
офлайн

  • Сообщения: 37
  • Награды: 0
  • Замечания:
 
Спасибо Каинд, разобрался)
 
  • Страница 1 из 1
  • 1
Поиск: