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

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

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

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

> Правила форума

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

Название темы должно соответствовать содержанию. Темы с названием типа "Помогите", "Вопрос", "парни подскажите..." - будут удалены.
Все темы, не относящиеся к "Вопросам по модам и плагинам", будут удалены или перемещены в соответствующий раздел.

Правила оформления темы:
1. Помимо заголовка не забудьте верно сформулировать свой вопрос.
2. Выложите исходник (в тег кода + ) или ссылку на плагин который вызывает у вас вопросы.
3. Выложите лог с ошибками (если имеется) под спойлер

Добавить выдачу 16k$ в respawn

, Respawn
kibernette
сообщение 27.6.2014, 14:06
Сообщение #1
Стаж: 12 лет

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

Кто может добавить в этот respawn такую функцию, что бы после возрождения было всегда $16000 денегПрикрепленный файл  respawn.sma ( 1,92 килобайт ) Кол-во скачиваний: 8
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
trollface
сообщение 27.6.2014, 14:09
Сообщение #2
Стаж: 12 лет

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

kibernette,
cs_set_user_money(id, 16000)

Код:
/* last update 1/15/14 */

#include <amxmodx>
#include <hamsandwich>
#include <cstrike>

#define RESPAWNDELAY 3 // delay before respawn

// ===========

new giDelay
new Float:gflDelay
new gMsgBarTime

new giMaxPlayers
new bool:giBlockRespawn // whether respawn process should be blocked for now

new giInDelay // whether respawn process was started
#define CheckInDelay(%1) ( giInDelay & ( 1 <<( %1-1 ) ) )
#define SetInDelay(%1) ( giInDelay |= ( 1 <<( %1-1 ) ) )
#define ClearInDelay(%1) ( giInDelay &= ~( 1 <<( %1-1 ) ) )

public plugin_init() {
register_plugin( "Respawn", "0.3", "fl0wer / Safety1st" )
register_dictionary( "respawn.txt" )
gMsgBarTime = get_user_msgid( "BarTime" )
giDelay = RESPAWNDELAY
gflDelay = float( RESPAWNDELAY )
giMaxPlayers = get_maxplayers()

register_event( "HLTV", "NewRound", "a", "1=0", "2=0" )
register_event( "TextMsg", "CancelRespawn", "a", "2=#Game_will_restart_in", "2=#Game_Commencing" )
register_logevent( "CancelRespawn", 2, "1=Round_End" )

RegisterHam( Ham_Killed, "player", "FwdKilled" )
RegisterHam(Ham_Spawn,"player","fw_PlayerSpawn_Post",1)
}

public FwdKilled(id) {
if( giBlockRespawn )
return

client_print( id, print_center, "%L", id, "RESPAWN_MSG", giDelay )

message_begin( MSG_ONE_UNRELIABLE, gMsgBarTime, _, id )
write_short( giDelay )
message_end()

set_task( gflDelay, "Respawn", id )
SetInDelay(id)
}

public fw_PlayerSpawn_Post(id)
{
if(!is_user_alive(id)) return

cs_set_user_money(id, 16000)
}

public Respawn(id) {
switch( cs_get_user_team(id) ) {
case CS_TEAM_T, CS_TEAM_CT : {
ExecuteHamB( Ham_CS_RoundRespawn, id )
ClearInDelay(id)
}
}
}

public client_disconnect(id) {
if( CheckInDelay(id) ) {
remove_task(id)
ClearInDelay(id)
}
}

public CancelRespawn() {
giBlockRespawn = true

if( !giInDelay ) // no one is scheduled to be respawned
return

for( new i = 0; i < giMaxPlayers; i++ ) {
if( CheckInDelay(i) )
remove_task(i)
}

giInDelay = 0 // completely reset the value
}

public NewRound() {
giBlockRespawn = false
}


Отредактировал: trollface, - 27.6.2014, 14:10
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
kibernette
сообщение 27.6.2014, 14:12
Сообщение #3
Стаж: 12 лет

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

Цитата(trollface @ 27.6.2014, 14:09) *
kibernette,
cs_set_user_money(id, 16000)

а как это все связать с плагином?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
trollface
сообщение 27.6.2014, 14:13
Сообщение #4
Стаж: 12 лет

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

kibernette,
я пост свой обновил...
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
kibernette
сообщение 27.6.2014, 14:13
Сообщение #5
Стаж: 12 лет

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

Цитата(trollface @ 27.6.2014, 14:09) *
kibernette,
cs_set_user_money(id, 16000)

Код:
/* last update 1/15/14 */

#include <amxmodx>
#include <hamsandwich>
#include <cstrike>

#define RESPAWNDELAY 3 // delay before respawn

// ===========

new giDelay
new Float:gflDelay
new gMsgBarTime

new giMaxPlayers
new bool:giBlockRespawn // whether respawn process should be blocked for now

new giInDelay // whether respawn process was started
#define CheckInDelay(%1) ( giInDelay & ( 1 <<( %1-1 ) ) )
#define SetInDelay(%1) ( giInDelay |= ( 1 <<( %1-1 ) ) )
#define ClearInDelay(%1) ( giInDelay &= ~( 1 <<( %1-1 ) ) )

public plugin_init() {
register_plugin( "Respawn", "0.3", "fl0wer / Safety1st" )
register_dictionary( "respawn.txt" )
gMsgBarTime = get_user_msgid( "BarTime" )
giDelay = RESPAWNDELAY
gflDelay = float( RESPAWNDELAY )
giMaxPlayers = get_maxplayers()

register_event( "HLTV", "NewRound", "a", "1=0", "2=0" )
register_event( "TextMsg", "CancelRespawn", "a", "2=#Game_will_restart_in", "2=#Game_Commencing" )
register_logevent( "CancelRespawn", 2, "1=Round_End" )

RegisterHam( Ham_Killed, "player", "FwdKilled" )
RegisterHam(Ham_Spawn,"player","fw_PlayerSpawn_Post",1)
}

public FwdKilled(id) {
if( giBlockRespawn )
return

client_print( id, print_center, "%L", id, "RESPAWN_MSG", giDelay )

message_begin( MSG_ONE_UNRELIABLE, gMsgBarTime, _, id )
write_short( giDelay )
message_end()

set_task( gflDelay, "Respawn", id )
SetInDelay(id)
}

public fw_PlayerSpawn_Post(id)
{
if(!is_user_alive(id)) return

cs_set_user_money(id, 16000)
}

public Respawn(id) {
switch( cs_get_user_team(id) ) {
case CS_TEAM_T, CS_TEAM_CT : {
ExecuteHamB( Ham_CS_RoundRespawn, id )
ClearInDelay(id)
}
}
}

public client_disconnect(id) {
if( CheckInDelay(id) ) {
remove_task(id)
ClearInDelay(id)
}
}

public CancelRespawn() {
giBlockRespawn = true

if( !giInDelay ) // no one is scheduled to be respawned
return

for( new i = 0; i < giMaxPlayers; i++ ) {
if( CheckInDelay(i) )
remove_task(i)
}

giInDelay = 0 // completely reset the value
}

public NewRound() {
giBlockRespawn = false
}


спасибо большое=))) Сейчас тестить буду=)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
kibernette
сообщение 27.6.2014, 14:18
Сообщение #6
Стаж: 12 лет

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

Спасибо большое, тему закрывайте.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 2 гостей читают эту тему: