Предмет+Предмет=Предмет 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
- Замечания:
|
Спасибо Каинд, разобрался)
|
|
| |