廣告廣告
  加入我的最愛 設為首頁 風格修改
首頁 首尾
 手機版   訂閱   地圖  簡體 
您是第 4608 個閱讀者
 
發表文章 發表投票 回覆文章
  可列印版   加為IE收藏   收藏主題   上一主題 | 下一主題   
casper1315 手機
個人文章 個人相簿 個人日記 個人地圖
初露鋒芒
級別: 初露鋒芒 該用戶目前不上站
推文 x11 鮮花 x20
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片
推文 x0
[插件] [1.6]如何把人物編寫進去SMA技能檔裡面
請問一下各位大大們 小弟是開超級英雄伺服
要怎麼樣把槍械/人物 模組 編寫進去 技能檔裡面
熬夜熬了兩天 最後結果都是 失敗 失敗 失敗.....爬文也找不到類似的編寫方式
簡單說 我要怎麼樣讓一個技能 多一個人物模組
讓玩家點了技能之後 同時也擁有人物外表 該怎麼樣編寫 在這邊跪求各路邊寫大大們了>"<


論壇
您無法觀看到此用戶名稱
獻花 x0 回到頂端 [樓 主] From:臺灣中華電信股份有限公司 | Posted:2015-12-19 04:15 |
Nailaz 手機
個人頭像
個人文章 個人相簿 個人日記 個人地圖
特殊貢獻獎 社區建設獎 創作大師獎
小有名氣
級別: 小有名氣 該用戶目前不上站
推文 x77 鮮花 x254
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

先#include <cstrike>

在技能功能新增此行
cs_set_user_model(index, "ABC")

plugin_precache()
這裡新增
precache_model("models/player/ABC/ABC.mdl")

依此類推


web front-end and software engineer.
獻花 x0 回到頂端 [1 樓] From:臺灣中華電信股份有限公司 | Posted:2015-12-20 10:27 |
casper1315 手機
個人文章 個人相簿 個人日記 個人地圖
初露鋒芒
級別: 初露鋒芒 該用戶目前不上站
推文 x11 鮮花 x20
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

下面是引用 Nailaz 於 2015-12-20 10:27 發表的: 到引言文
先#include <cstrike>

在技能功能新增此行
cs_set_user_model(index, "ABC")

plugin_precache()
這裡新增
precache_model("models/player/ABC/ABC.mdl")

依此類推


很抱歉>< 問題出在哪裡....我還是沒出現人物模組 我有照你說的方法去嘗試 可以幫我看一下嗎((你說的語法有給反紅))

// ALIEN! - from the Alien movie series.


/* CVARS - copy and paste to shconfig.cfg


//Alien
alien_level 5
alien_health 125 //Default 125
alien_armor 125 //Default 125
alien_knifemult 0.0 //Damage multiplyer for his Knife
alien_vision 160 //How far vision is zoomed out (must be 100 or higer because normal vision is 90)
alien_tint 50 //How dark the green screen tint is (255-no sight, 0-perfect sight)
alien_alpha 50 //Alpha level when invisible (0-invisible, 255-full visibility)
alien_knifemode 0 //1-knife only can't change weapons, 0-Alien Vision on only when knifing (def 0)


*/


/*
* v1.5 - vittu - 6/27/06
*      - Updated to amxmodx only, requires amxx 1.70 or higher.
*      - Plus other minor code changes.
*
* v1.4 - vittu - 7/3/05
*      - Fixed crash to AMX caused by the previous update, since
*          AMX can't register a MSG_ONE_UNRELIABLE message.
*
* v1.3 - vittu - 6/14/05
*      - Minor code clean up.
*
* v1.2 - vittu - 3/18/05
*      - Updated and cleaned code a bit. Still functions the same.
*      - Added new cvar alien_knifemode to allow weapon change or not,
*         old version was knife only.
*
*/


#include <amxmodx>
#include <superheromod>
#include <cstrike>


// GLOBAL VARIABLES
new HeroName[] = "異型"
new HasAlien[SH_MAXSLOTS+1]
new AlienModeOn[SH_MAXSLOTS+1]
new MsgSetFOV
new CvarKnifeMult, CvarZoomVision, CvarTint, CvarAlphaValue, CvarMode
//----------------------------------------------------------------------------------------------
public plugin_init()
{
// Plugin Info
register_plugin("SUPERHERO Alien", "1.5", "Freecode/AssKicR")


// DO NOT EDIT THIS FILE TO CHANGE CVARS, USE THE SHCONFIG.CFG
register_cvar("alien_level", "5")
register_cvar("alien_health", "125")
register_cvar("alien_armor", "125")
CvarKnifeMult = register_cvar("alien_knifemult", "0.0")
CvarZoomVision = register_cvar("alien_vision", "160")
CvarTint = register_cvar("alien_tint", "50")
CvarAlphaValue = register_cvar("alien_alpha", "50")
CvarMode = register_cvar("alien_knifemode", "0")


// FIRE THE EVENT TO CREATE THIS SUPERHERO!
shCreateHero(HeroName, "拿刀擁有特效", "使用刀時擁有更廣的視野", false, "alien_level")


// REGISTER EVENTS THIS HERO WILL RESPOND TO! (AND SERVER COMMANDS)
// INIT
register_srvcmd("alien_init", "alien_init")
shRegHeroInit(HeroName, "alien_init")


// EVENTS
register_event("ResetHUD", "new_spawn", "b")
register_event("CurWeapon", "weapon_change", "be", "1=1")
register_event("DeathMsg", "alien_death", "a")
register_event("Damage", "alien_damage", "b", "2!0")


// Let Server know about Alien's Variables
shSetMaxHealth(HeroName, "alien_health")
shSetMaxArmor(HeroName, "alien_armor")


MsgSetFOV = get_user_msgid("SetFOV")
}
//----------------------------------------------------------------------------------------------
public alien_init()
{
// First Argument is an id
new temp[6]
read_argv(1, temp, 5)
new id = str_to_num(temp)


// 2nd Argument is 0 or 1 depending on whether the id has the hero
read_argv(2, temp, 5)
new hasPowers = str_to_num(temp)


switch(hasPowers)
{
case true:
{
HasAlien[id] = true
weapon_change(id)
}


case false:
{
//This gets run if they had the power but don't anymore
if ( is_user_connected(id) && HasAlien[id] )
{
alien_vision_off(id)
shRemHealthPower(id)
shRemArmorPower(id)
}


HasAlien[id] = false
}
}
}
//----------------------------------------------------------------------------------------------
public new_spawn(id)
{
if ( shModActive() && is_user_alive(id) && HasAlien[id] )
weapon_change(id)
}
//----------------------------------------------------------------------------------------------
public weapon_change(id)
{
if ( !shModActive() || !is_user_alive(id) || !HasAlien[id] )
return


//new wpnid = read_data(2)
// Do it this way since this might be called on alien_init or reset hud
new clipNull, ammoNull, wpnid = get_user_weapon(id, clipNull, ammoNull)


switch(wpnid)
{
case CSW_KNIFE:
alien_vision_on(id)


default:
{
// Force knife only or not?
switch(get_pcvar_num(CvarMode))
{
case 1:
client_cmd(id, "weapon_knife")
case 0:
alien_vision_off(id)
}
}
}
}
//----------------------------------------------------------------------------------------------
alien_vision_on(id)
{
if ( shModActive() && is_user_alive(id) && HasAlien[id] )
{
AlienModeOn[id] = true


// Prevent cvar from being set too low
new Zoom = get_pcvar_num(CvarZoomVision)


if ( Zoom < 100 )
{
debugMessage("(Alien) Alien Vision must be set higher than 100, defaulting to 100", 0, 0)
Zoom = 100
set_cvar_num("alien_vision", Zoom)
}


// Set Zoom
message_begin(MSG_ONE, MsgSetFOV, {0,0,0}, id)
write_byte(Zoom)
message_end()


// Set once before loop task
setScreenFlash(id, 0, 200, 0, 13, get_pcvar_num(CvarTint))
set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, get_pcvar_num(CvarAlphaValue))


// Loop to make sure their screen stays green and they stay invisible
set_task(1.0, "alien_loop", id, "", 0, "b")
}
}
//----------------------------------------------------------------------------------------------
public alien_loop(id)
{
// Prevents loop from running on disconnected clients
if ( !shModActive() || !is_user_connected(id) )
{
remove_task(id)
return
}


if ( HasAlien[id] && is_user_alive(id) )
{
setScreenFlash(id, 0, 200, 0, 13, get_pcvar_num(CvarTint))
set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, get_pcvar_num(CvarAlphaValue))
}
}
//----------------------------------------------------------------------------------------------
alien_vision_off(id)
{
if ( !is_user_connected(id) || !AlienModeOn[id] )
return


remove_task(id)


// Quickly removes screenflash
setScreenFlash(id, 0, 200, 0, 1, get_pcvar_num(CvarTint))


// Reset Zoom
message_begin(MSG_ONE, MsgSetFOV, {0,0,0}, id)
write_byte(90) //Normal, not Zooming
message_end()


// Resets alpha
set_user_rendering(id)


// Makes sure this function is only called once, if alien mode was on
AlienModeOn[id] = false
}
//----------------------------------------------------------------------------------------------
public alien_damage(id)
{
if ( !shModActive() || !is_user_alive(id) )
return


new weapon, bodypart, attacker = get_user_attacker(id, weapon, bodypart)


if ( attacker <= 0 || attacker > SH_MAXSLOTS )
return


if ( HasAlien[attacker] && weapon == CSW_KNIFE && is_user_alive(id) )
{
new damage = read_data(2)
new headshot = bodypart == 1 ? 1 : 0


// do extra damage
new extraDamage = floatround(damage * get_pcvar_float(CvarKnifeMult) - damage)
if ( extraDamage > 0 )
shExtraDamage(id, attacker, extraDamage, "knife", headshot)
}
}
//----------------------------------------------------------------------------------------------
public alien_death()
{
new id = read_data(2)


if ( !HasAlien[id] )
return


alien_vision_off(id)
}
//----------------------------------------------------------------------------------------------
public client_connect(id)
{
HasAlien[id] = false
AlienModeOn[id] = false


// Yeah don't want any left over residuals
remove_task(id)
}
//----------------------------------------------------------------------------------------------
public plugin_precache() {
                        cs_set_user_model(index, "alien")
precache_model("models/player/alien/alien.mdl")
}


[ 此文章被casper1315在2015-12-23 01:55重新編輯 ]


論壇
您無法觀看到此用戶名稱
獻花 x0 回到頂端 [2 樓] From:臺灣中華電信股份有限公司 | Posted:2015-12-22 21:30 |
Nailaz 手機
個人頭像
個人文章 個人相簿 個人日記 個人地圖
特殊貢獻獎 社區建設獎 創作大師獎
小有名氣
級別: 小有名氣 該用戶目前不上站
推文 x77 鮮花 x254
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

cs_set_user_model(id, "alien")

要放在你的效果那段

你看不太懂sma吧..

看你內容應該是加在
set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, get_pcvar_num(CvarAlphaValue))
這行下面

alien_vision_off(id){}
這裡面再寫上把模組換回原本的
cs_set_user_model(id, "原模組名字")


web front-end and software engineer.
獻花 x0 回到頂端 [3 樓] From:臺灣中華電信股份有限公司 | Posted:2015-12-26 19:37 |

首頁  發表文章 發表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.055089 second(s),query:16 Gzip disabled
本站由 瀛睿律師事務所 擔任常年法律顧問 | 免責聲明 | 本網站已依台灣網站內容分級規定處理 | 連絡我們 | 訪客留言