ReHLDS/ReAPI CSDM [0.0.8]

Vesuvius

НЕ СКРИПТЕР!!!
Команда форума
Модератор
Регистрация
8 Июн 2017
Сообщения
741
Симпатии
241
Пол
Мужской
#1
Автор: Vaqtincha
Текущая версия: 0.0.8

Описание:
Это самый обычный мод CSDM. Учитывая развитие RE продуктов а именно ReGameDLL_CS в котором есть много плюшек, которые использовались в модулях CSDM, автор решил переписать устаревший код и избавиться от amxx модулей (которые используются в других модах CSDM например ReCSDM). Вот что из этого вышло.

Требования:
  • ReAPI
  • fakemeta
  • hamsandwich
Установка
  1. Скомпилируйте плагины. Установите на сервер.
  2. Пропишите файлы .amxx в файле /amxmodx/configs/plugins.ini
  3. Скопируйте папку csdm в папку: amxmodx/configs/

Настройки:
C++:
;================================================================;
; CSDM Configuration File
; Default settings by Vaqtincha
;================================================================;

[settings]
; Sets the spawn waiting time.
respawn_delay = 0.7

; Spawn wait statusbar.
; Note: It works if "respawn_delay" above 1.4 sec.
show_respawn_bar = 0

; To be fair, play a spawn noise at new location.
block_gunpickup_sound = 0

; Set whether free for all mode is enabled by default.
free_for_all = 1

; Sets game modes:
; 0 - normal hit
; 1 - headshots only
; 2 - always hit head
; 3 - auto healer
gameplay_mode = 0

[misc]
; Weapon state remember: m4a1, usp, famas, glock.
weaponstate_remember = 1

; Refill clip ammo on kill.
; 1 - only active weapon
; 2 - all weapons (slot1 & slot2)
refill_clip_weapons = 1

; Customize HUD.
; c - crosshair
; f - flashlight
; m - money
; h - health, armor, radar
; t - timer
hide_hud_flags = "ft"

[protection]
; Number of seconds someone is respawned for.
; 0 = disable
protection_time = 2.0

; Protection time icon (notify).
; Note: It works if "protection_time" above 1.9 sec.
; Sprite name defined in hud.txt ("" = disabled).
sprite_name = "suithelmet_full"

; Colors of glow shell, leave this in quotes
; The digits are "R G B"
; random value "random"
render_color_tt = "220 0 0"
render_color_ct = "0 0 220"

; Alpha transparency (as A gets higher, the glow shell is thicker)
render_alpha = 15

; Protected player can't take damage
block_damage = 1


[mapcleaner]
; Map objectives are removed by their flags.
; a - "as_" & "es_" objectives (vip assasination & escape)
; b - buyzones
; c - "cs_" objectives (hostage rescue)
; d - "de_" objectives (bomb defuse)
; e - equips (map auto-equip's)
; w - world weapons (map armoury's)
remove_objective_flags = "abcdew"

; Remove dropped weapons.
remove_dropped_weapons = 1
; Sets 1 to exclude bomb from auto-removing.
exclude_bomb = 0


[equip]
; 0 - [autoitems] only
; 1 - equip menu ([secondary] & [primary] + [autoitems])
; 2 - randomly weapons ([secondary] & [primary] + [autoitems])
; 3 - free buy (only buying)
equip_mode = 3

; Free buy time in seconds (weapon buy flood protect!)
; 0 - no time limit
freebuy_time = 20

; Free buy spawn money
; 0 - default max money (used cvar mp_maxmoney)
freebuy_money = 5000

; Allow to open equip menu always when not have weapon
always_open_menu = 0

; Block default spawn items (usp, glock)
block_default_items = 0

; ========== Auto Items ===========
; Format for autoitems is:
; "item_name" "team" "amount|ammo"
; 0 - default amount
; all - any
; ct - counter-terorists
; tt - terorists

[autoitems]
; item_longjump            "all"    0
; item_thighpack        "ct"    0
; item_kevlar               "all"    0
item_assaultsuit          "all"    0
weapon_knife            "all"    0
; weapon_smokegrenade      "tt"    0
; weapon_flashbang         "ct"    0
; weapon_hegrenade          "all"    0
; weapon_deagle         "all"    0

; ========== Equip Menu ==========
; Format for equip menus is:
; "WeaponName" "Display Name"
; Example:
; weapon_m4a1 "Colt M4A1 Carbine"

[secondary]
weapon_usp             "USP"
weapon_glock18         "Glock"
weapon_deagle         "Deagle"
weapon_p228         "P228"
weapon_elite         "Elite"
weapon_fiveseven     "Five Seven"

[primary]
weapon_m4a1            "M4A1"
weapon_ak47         "AK47"
weapon_famas         "Famas"
weapon_galil         "Galil"
weapon_awp             "AWP"
weapon_mp5navy         "MP5 Navy"
weapon_p90             "P90"
weapon_aug             "AUG"
weapon_sg552         "SG552"
weapon_scout         "Scout"
; weapon_ump45         "UMP 45"
; weapon_sg550         "SG550"
; weapon_m249         "M249"
; weapon_g3sg1         "G3SG1"
; weapon_m3         "M3"
; weapon_xm1014     "XM1014"
; weapon_tmp         "TMP"
; weapon_mac10         "Mac 10"
; weapon_shield        "Tac. Shield"


; List weapons here the bots can randomly have.
[botsecondary]
weapon_usp
weapon_glock18
weapon_deagle
weapon_p228
weapon_elite
weapon_fiveseven

[botprimary]
weapon_m4a1
weapon_ak47
weapon_famas
weapon_galil
weapon_awp
weapon_mp5navy
weapon_p90
weapon_aug
weapon_sg552
; weapon_scout
; weapon_ump45
; weapon_sg550
; weapon_m249
; weapon_g3sg1
; weapon_m3
; weapon_xm1014
; weapon_tmp
; weapon_mac10
[ALL]
add: Убран сток CSDM_PrintChat из csdm.inc теперь нужен colorchat.inc для AMXX <= 182 (в папке "AMXX 1.8.2 colorchat")
add: Рефакторинг кода

[csdm_core]
add: Добавил нативы CSDM_GetEquipmode/CSDM_SetEquipmode

[csdm_spawn_manager]
add: Изменен метод перемещение игроков
add: Spawn Editor = Появилось отмена после удаление спавна (але undo)
add: Spawn Editor = Изменен метод поиска спавн энтити
fix: Spawn Editor = Исправлена возможная ошибка "out of bounds" при сохранении

[csdm_equip_manager]
add: [FREE_BUY] Новый параметр "freebuy_time" время покупки (в секундах) после спавна (антифлуд покупки). Работает как в оригинале (но не глобально!)
add: [FREE_BUY] Новый параметр "freebuy_money" сколько давать деньги
add: [EQUIP_MENU] Теперь закрывает меню если игрок умер не выбрав ничего
add: [EQUIP_MENU] Проверка видит ли игрок при выпольнении команды guns...

csdm_map_cleaner, csdm_misc, csdm_protection можно и не обновить но перекомпилите

========================================================
В планах:
  • Multilang,
  • ReloadConfig
C++:
//■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ FORWARDS ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

/** Called when CSDM initializes.
*
* @param szVersion            It passes in a version string, or a blank string if some load failure occurred.
*/
forward CSDM_Initialized(const szVersion[])

/** Called when CSDM is ready to accept config hooks.
*
* @param iReadAction        See enum ReadTypes
*/
forward CSDM_ConfigurationLoad(const ReadTypes:iReadAction)

/** Called when CSDM is execute CVar values.
*/
forward CSDM_ExecuteCVarValues()

/** Called right before gamemode change.
*
* @param iCurrentMode        Current gameplay mode
* @param iNewMode            Changed to
*
* @note                        return PLUGIN_HANDLED will block change
*/
forward CSDM_GamemodeChanged(const GameTypes:iCurrentMode, const GameTypes:iNewMode)

/** Called right before round is restarted.
*
* @param bNewGame            Is round restart
*/
forward CSDM_RestartRound(const bool:bNewGame)

/** Player spawned.
*
* @param pPlayer            Player id
* @param bIsBot                Is player bot ?
* @param iNumSpawns            Total spawns
*
* @note                        alive check not necessary
*/
forward CSDM_PlayerSpawned(const pPlayer, const bool:bIsBot, const iNumSpawns)

/** Player killed.
*
* @param pVictim            Victim id
* @param pKiller            Killer id
* @param iLastHitGroup        Last hitgroup
*
* @note                        pKiller == 0 if player was killed by world
*/
forward CSDM_PlayerKilled(const pVictim, const pKiller, const HitBoxGroup:iLastHitGroup)


//■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ NATIVES ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

/** Read config section.
*
* forward params: public my_config_handler(const szLineData[], const iSectionID)
*
* @param szSectionName         Section name defined in config.
* @param szHandler             Name of the handler function.
* @param iSectionID         section Index. (for multiple handler support)
*
* @return                      Index of section item.
*/
native CSDM_RegisterConfig(const szSectionName[], const szHandler[])

/** Gets config keyvalue.
*
* @param szKey                Keyname
* @param szValue            The variable to store the value in.
* @param iLen                Lenght
*
* @return                    true/false
*/
native bool:CSDM_GetConfigKeyValue(const szKey[], szValue[], iLen)

/** Gets gameplay mode.
*
* @return                     enum GameTypes
*/
native GameTypes:CSDM_GetGamemode()

/** Sets gameplay mode.
*
* @param iNewMode            See enum GameTypes
*
* @return                     Failed/Success
*/
native bool:CSDM_SetGamemode(const GameTypes:iNewMode)

/** Gets equip mode.
*
* @return                     enum EquipTypes
*/
native CSDM_GetEquipmode()

/** Sets equip mode.
*
* @param iNewMode             enum EquipTypes
*
* @noreturn
*/
native CSDM_SetEquipmode(const EquipTypes:iNewMode)
 

Вложения

Последнее редактирование: Vesuvius

Vesuvius

НЕ СКРИПТЕР!!!
Команда форума
Модератор
Регистрация
8 Июн 2017
Сообщения
741
Симпатии
241
Пол
Мужской
#5

Vesuvius

НЕ СКРИПТЕР!!!
Команда форума
Модератор
Регистрация
8 Июн 2017
Сообщения
741
Симпатии
241
Пол
Мужской
#7
SuNKeePeRZ, а почему нет??
используйте