Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

2 страниц V   1 2

Покупной парашют

Статус пользователя r1nk0
сообщение 7.6.2015, 13:53
Сообщение #1


Стаж: 12 лет

Сообщений: 1417
Благодарностей: 705
Полезность: 349

Привет,ищу плагин максимально облегченный типа этого

Скрытый текст
Код:
#include <amxmodx>
#include <engine>
#include <hamsandwich>

public plugin_init()
{
register_plugin("Parachute", "1.0", "maeStro");
RegisterHam(Ham_ObjectCaps, "player", "FwdHamObjectCaps");
}

public FwdHamObjectCaps(id)
{
if (!is_user_alive(id)||get_entity_flags(id) & FL_ONGROUND) return;
static Float:velocity[3];
entity_get_vector(id, EV_VEC_velocity, velocity);
if(velocity[2] < 0)
{
velocity[2] = (velocity[2] + 40.0 < -100) ? velocity[2] + 40.0 : -100.0;
entity_set_vector(id, EV_VEC_velocity, velocity);
}
}


или этого

Скрытый текст
Код:
#include <amxmodx>
#include <engine>

public plugin_init()
{
register_plugin("Parachute", "1.0", "maeStro");
}

public client_PreThink(id)
{
if(!is_user_alive(id)) return;
if(get_user_button(id) & IN_USE)
{
if(get_entity_flags(id) & FL_ONGROUND) return;
static Float:velocity[3];
entity_get_vector(id, EV_VEC_velocity, velocity);
if(velocity[2] < 0)
{
velocity[2] = (velocity[2] + 40.0 < -100) ? velocity[2] + 40.0 : -100.0;
entity_set_vector(id, EV_VEC_velocity, velocity);
}
}
}


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

Суть в том что я хочу другим плагином вызывать функцию выдачи\покупки парашюта,но не понимаю как,точнее знаю как,в парашюте этом есть функция типа give_parachute или buy_parachute вот их мне и нужно. Благодарю

Отредактировал: r1nk0, - 7.6.2015, 14:04


Создание и редактирование карт ($) - vk.com/id476857873
Настройка и техническое обслуживание ваших игровых серверов - vk.com/id476857873
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя r1nk0
сообщение 13.11.2015, 22:25
Сообщение #2


Стаж: 12 лет

Сообщений: 1417
Благодарностей: 705
Полезность: 349

все еще нуждаюсь в плагину,давайте за деньгу

контакты тут на форуме

нужен парашют без модели,максимально оптимизированный
парашют может взять игрок командой в чате\консоли бесплатно.
квар выключения\включения плагина (необязательно)


Создание и редактирование карт ($) - vk.com/id476857873
Настройка и техническое обслуживание ваших игровых серверов - vk.com/id476857873
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Vaqtincha
сообщение 13.11.2015, 22:44
Сообщение #3
Стаж: 11 лет

Сообщений: 981
Благодарностей: 352
Полезность: < 0

могу переделать это https://forums.alliedmods.net/showthread.php?t=261596 там оптимизация есть! только надо вырезать все ненужного.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ThisIsSparta
сообщение 13.11.2015, 22:59
Сообщение #4
Стаж: 11 лет

Сообщений: 566
Благодарностей: 307
Полезность: 600

r1nk0,
Код
#include <amxmodx>
#include <cstrike>
#include <engine>

new parachute_available[33] = false
new parachute_cost = 1000 //стоимость $
  
public plugin_init()
{
   register_plugin("Parachute", "1.0", "maeStro");
   register_clcmd( "say /parachute", "buy_parachute") //команда для покупки в чат /parachute
}

public buy_parachute(id)
{
   if (cs_get_user_money(id) >= parachute_cost)
   {
      cs_set_user_money(id,cs_get_user_money(id) - parachute_cost)
      parachute_available[id] = true
   }
   else
      client_print(id,print_chat,"Недостаточно средств")
}

  
public client_PreThink(id)
{
   if(!is_user_alive(id) && !parachute_available[id]) return;
   if(get_user_button(id) & IN_USE)
   {
      if(get_entity_flags(id) & FL_ONGROUND) return;
      static Float:velocity[3];
      entity_get_vector(id, EV_VEC_velocity, velocity);
      if(velocity[2] < 0)
      {
         velocity[2] = (velocity[2] + 40.0 < -100) ? velocity[2] + 40.0 : -100.0;
         entity_set_vector(id, EV_VEC_velocity, velocity);
      }
   }
}

public client_disconnect(id)
{
   parachute_available[id] = false //при выходе обнуляем покупку
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Vaqtincha
сообщение 13.11.2015, 23:04
Сообщение #5
Стаж: 11 лет

Сообщений: 981
Благодарностей: 352
Полезность: < 0

ThisIsSparta, и ты думаешь у автора проблемы с поиском?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ThisIsSparta
сообщение 13.11.2015, 23:08
Сообщение #6
Стаж: 11 лет

Сообщений: 566
Благодарностей: 307
Полезность: 600

r1nk0,

не заметил что бесплатно надо, исправил
Код
#include <amxmodx>
#include <engine>

new parachute_available[33] = false
  
public plugin_init()
{
   register_plugin("Parachute", "1.0", "maeStro");
   register_clcmd( "say /parachute", "buy_parachute") //команда для покупки в чат /parachute
}

public buy_parachute(id)
{
   parachute_available[id] = true
}

  
public client_PreThink(id)
{
   if(!is_user_alive(id) && !parachute_available[id]) return;
   if(get_user_button(id) & IN_USE)
   {
      if(get_entity_flags(id) & FL_ONGROUND) return;
      static Float:velocity[3];
      entity_get_vector(id, EV_VEC_velocity, velocity);
      if(velocity[2] < 0)
      {
         velocity[2] = (velocity[2] + 40.0 < -100) ? velocity[2] + 40.0 : -100.0;
         entity_set_vector(id, EV_VEC_velocity, velocity);
      }
   }
}

public client_disconnect(id)
{
   parachute_available[id] = false //при выходе обнуляем покупку
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя r1nk0
сообщение 13.11.2015, 23:13
Сообщение #7


Стаж: 12 лет

Сообщений: 1417
Благодарностей: 705
Полезность: 349

Отлично работает без покупки :D ,а как сделать что бы он исчезал после смерти?

Код:
public client_disconnect(id)
{
parachute_available[id] = false //при смерти обнуляем покупку
}


Чет проверил после выхода с сервера,парашют остается ;'(

Отредактировал: r1nk0, - 13.11.2015, 23:17


Создание и редактирование карт ($) - vk.com/id476857873
Настройка и техническое обслуживание ваших игровых серверов - vk.com/id476857873
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ThisIsSparta
сообщение 13.11.2015, 23:16
Сообщение #8
Стаж: 11 лет

Сообщений: 566
Благодарностей: 307
Полезность: 600

Цитата(r1nk0 @ 14.11.2015, 0:08) *
Отлично работает,а как сделать что бы он исчезал после смерти?

Код:
public client_disconnect(id)
{
parachute_available[id] = false //при смерти обнуляем покупку
}


Код
public client_death(killer,victim)
{
   parachute_available[victim] = false
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя r1nk0
сообщение 13.11.2015, 23:19
Сообщение #9


Стаж: 12 лет

Сообщений: 1417
Благодарностей: 705
Полезность: 349

Цитата(ThisIsSparta @ 14.11.2015, 0:11) *
Код
public client_death(killer,victim)
{
   parachute_available[victim] = false
}


ну сама покупка не работает,он без нее работает....


Создание и редактирование карт ($) - vk.com/id476857873
Настройка и техническое обслуживание ваших игровых серверов - vk.com/id476857873
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ThisIsSparta
сообщение 13.11.2015, 23:23
Сообщение #10
Стаж: 11 лет

Сообщений: 566
Благодарностей: 307
Полезность: 600

r1nk0, точно, сейчас исправлю)

r1nk0,
Код
#include <amxmodx>
#include <engine>

new parachute_available[33] = false
  
public plugin_init()
{
   register_plugin("Parachute", "1.0", "maeStro");
   register_clcmd( "say /parachute", "buy_parachute") //команда для покупки в чат /parachute
}

public buy_parachute(id)
{
   parachute_available[id] = true
}

  
public client_PreThink(id)
{
   if(!is_user_alive(id)) return;
   if ((get_user_button(id) & IN_USE) && parachute_available[id])
   {
      if(get_entity_flags(id) & FL_ONGROUND) return;
      static Float:velocity[3];
      entity_get_vector(id, EV_VEC_velocity, velocity);
      if(velocity[2] < 0)
      {
         velocity[2] = (velocity[2] + 40.0 < -100) ? velocity[2] + 40.0 : -100.0;
         entity_set_vector(id, EV_VEC_velocity, velocity);
      }
   }
}

public client_disconnect(id)
{
   parachute_available[id] = false //при выходе обнуляем покупку
}

public client_death(killer,victim)
{
   parachute_available[victim] = false
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Vaqtincha
сообщение 13.11.2015, 23:31
Сообщение #11
Стаж: 11 лет

Сообщений: 981
Благодарностей: 352
Полезность: < 0

Код:
public client_death(killer,victim)
{
parachute_available[victim] = false
}

это фэйл или что?

Отредактировал: Vaqtincha, - 13.11.2015, 23:33
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя r1nk0
сообщение 13.11.2015, 23:43
Сообщение #12


Стаж: 12 лет

Сообщений: 1417
Благодарностей: 705
Полезность: 349

Цитата(Vaqtincha @ 14.11.2015, 0:27) *
Код:
public client_death(killer,victim)
{
parachute_available[victim] = false
}

это фэйл или что?



а как правильно?

вот так не правильнее будет?

Код:
public buy_parachute(id)
{
parachute_available[id] = true
}


------>

Код:
public buy_parachute(id)
{
parachute_available[id] = true
return PLUGIN_HANDLED
}




Отредактировал: r1nk0, - 13.11.2015, 23:51


Создание и редактирование карт ($) - vk.com/id476857873
Настройка и техническое обслуживание ваших игровых серверов - vk.com/id476857873
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 13.11.2015, 23:56
Сообщение #13
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Разве 1-й вариант из шапки не легче? Почему выбрали второй?
Форвард из 1-го работает только во время удержания кнопки IN_USE, а из 2-го – всегда (60-100 раз в секунду).
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Vaqtincha
сообщение 14.11.2015, 0:00
Сообщение #14
Стаж: 11 лет

Сообщений: 981
Благодарностей: 352
Полезность: < 0

r1nk0, причем тут public buy_parachute(id)

есть же нормальный DeathMsg или на хаме килл
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя r1nk0
сообщение 14.11.2015, 0:01
Сообщение #15


Стаж: 12 лет

Сообщений: 1417
Благодарностей: 705
Полезность: 349

Цитата(Vaqtincha @ 14.11.2015, 0:55) *
r1nk0, причем тут public buy_parachute(id)

есть же нормальный DeathMsg или на хаме килл


я пытаюсь вызвать функцию из парашюта другим плагином и buy_parachute работает только так почему то.


Создание и редактирование карт ($) - vk.com/id476857873
Настройка и техническое обслуживание ваших игровых серверов - vk.com/id476857873
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя r1nk0
сообщение 14.11.2015, 0:06
Сообщение #16


Стаж: 12 лет

Сообщений: 1417
Благодарностей: 705
Полезность: 349

вот мне реал проще заплатить за рабочий вариант как нужно мне,чем гадать тут :D


Создание и редактирование карт ($) - vk.com/id476857873
Настройка и техническое обслуживание ваших игровых серверов - vk.com/id476857873
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Vaqtincha
сообщение 14.11.2015, 0:23
Сообщение #17
Стаж: 11 лет

Сообщений: 981
Благодарностей: 352
Полезность: < 0

r1nk0, не в парашют(или парашут)е дело. Ты возможно неправильно вызываешь
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя r1nk0
сообщение 15.11.2015, 10:17
Сообщение #18


Стаж: 12 лет

Сообщений: 1417
Благодарностей: 705
Полезность: 349

Цитата(Vaqtincha @ 14.11.2015, 1:19) *
r1nk0, не в парашют(или парашут)е дело. Ты возможно неправильно вызываешь


ну например функция из плагина resetscore вызывается нормально.

Resetscore
public resetscore(id)
{
if(!is_user_connected(id)) return PLUGIN_HANDLED

new deaths = get_user_deaths(id)
new money = cs_get_user_money(id)

if(get_pcvar_num(g_Enable) == 1)
{
if(deaths == 0)
{
client_printcolor(id, "%L", LANG_SERVER, "NO_HAVE_DEATHS")

return PLUGIN_HANDLED
}

if(get_pcvar_num(g_ResetMoney))
{

if(money > get_pcvar_num(iMoneyToReset))
{
cs_set_user_money(id, money - get_pcvar_num(iMoneyToReset))

hasReset[id] = true

}

else
{
client_printcolor(id, "%L", LANG_SERVER, "NO_MONEY_TO_RESET")
client_printcolor(id, "%L", LANG_SERVER, "MSG_INF_NO_MONEY", money)
client_printcolor(id, "%L", LANG_SERVER, "MSG_INF_NO_MONEY2", get_pcvar_num(iMoneyToReset))

return PLUGIN_HANDLED
}
}

set_user_frags(id, 0)
cs_set_user_deaths(id, 0)

client_printcolor(id, "%L", LANG_SERVER, "RESETSCORE")

if(hasReset[id])
{
client_printcolor(id, "%L", LANG_SERVER, "MINUS_MONEY", get_pcvar_num(iMoneyToReset))

hasReset[id] = false
}

return PLUGIN_HANDLED
}

else
{
client_printcolor(id, "%L", LANG_SERVER, "RESETSCORE_NOT_ENABLED")

return PLUGIN_HANDLED
}

return PLUGIN_CONTINUE
}


а когда вызываю public buy_parachute(id) не работает

Safety1st помоги я про твои плагины говорю)

Отредактировал: r1nk0, - 15.11.2015, 10:19


Создание и редактирование карт ($) - vk.com/id476857873
Настройка и техническое обслуживание ваших игровых серверов - vk.com/id476857873
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Legend21
сообщение 15.11.2015, 10:41
Сообщение #19
Стаж: 14 лет
Город: Винница

Сообщений: 604
Благодарностей: 229
Полезность: 561

r1nk0,

Код:
public buy_parachute(id)
{
/*
забирает бабло
*/
new bablo = cs_get_user_money(id)
cs_set_user_money(id, bablo - 200)
parachute_available[id] = true
}


Отредактировал: Legend21, - 15.11.2015, 10:41
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя r1nk0
сообщение 15.11.2015, 10:45
Сообщение #20


Стаж: 12 лет

Сообщений: 1417
Благодарностей: 705
Полезность: 349

Цитата(Legend21 @ 15.11.2015, 11:37) *
r1nk0,

Код:
public buy_parachute(id)
{
/*
забирает бабло
*/
new bablo = cs_get_user_money(id)
cs_set_user_money(id, bablo - 200)
parachute_available[id] = true
}


дак не нужно что бы он снимал бабло,нужно что бы он просто выдавался командой)


Создание и редактирование карт ($) - vk.com/id476857873
Настройка и техническое обслуживание ваших игровых серверов - vk.com/id476857873
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
2 страниц V   1 2
 
Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: