|
本帖最后由 HiganRetour 于 2012-1-2 12:38 编辑
有意向请留下QQ 会主动联系
==========================
招收基本要求:
1. 空闲时间多 如不能保证充足的时间 请至少保证每周能有一定时间上线
2. 不私自篡改游戏内数据
3. 不以任何形式泄露所需更新内容与内部数据
4. 乐观向上 性格好
5. 保证基础正确率 有自我检查能力
6. 酱油不卖
==========================
JASS程序员
工作内容(满足其中任意1~2项即可):
a. 按照要求编写技能代码
有能力完成一定完整性的JASS代码
b. 解决处理各种技能道具Bug
在此方面有一定经验为优 对THD代码有初步了解掌握
c. 优化排泄
在此方面有一定检验为优
d. 游戏运行流畅度
在此方面有一定经验为优 对魔兽技能编辑和算法优化等有经验者请务必与我们联系
e. 过硬的程序编程基底
多为解决THD长期为解决问题 如
随机分阵 选人界面BUG 游戏运行优化 等...
录取要求:
1.任何录取方式都需要有满足基本要求的前提
2.以上任务能担当大于3个最优
3.以上任务能担当1~2个请留下联系方式
4.能完成F任务无条件录取
5.T码部分不予考虑
要求水平:
1. 有一定程度计算机语言基础 最优精通Jass 如不能精通 请能保证自学能力
2. 必要错误率低,不可做出一般排泄错误或一般漏洞
3. 对War3技能编排设计等要有一定认知
附 代码一则 有相关基础的人可以观看一下
function Trig_Remilia01_Conditions takes nothing returns boolean
return GetSpellAbilityId()=='A0CD'
endfunction
function Trig_Remilia01_Main takes nothing returns nothing
local timer t = GetExpiredTimer()
local integer task = GetHandleId(t)
local unit caster = LoadUnitHandle(udg_ht,task,0)
local unit u = LoadUnitHandle(udg_ht,task,1)
local unit v
local group m = LoadGroupHandle(udg_ht,task,2)
local group g
local boolexpr iff = GetPlayerFilter(GetOwningPlayer(caster))
local real ox = GetUnitX(u)
local real oy = GetUnitY(u)
local real px
local real py
local real a = LoadReal(udg_ht,task,0)
local real d = LoadReal(udg_ht,task,1)
local integer level = LoadInteger(udg_ht,task,0)
local integer i = LoadInteger(udg_ht,task,1)
local boolean k = false
local real damage
//========
if i>0 then
set px = ox + d*Cos(a)
set py = oy + d*Sin(a)
if i / 4 * 4 == i then
call DestroyEffect(AddSpecialEffect("BatAppear.mdx",px,py))
endif
if IsTerrainPathable(px,py,PATHING_TYPE_FLYABILITY)==false then
call SetUnitX(u,px)
call SetUnitY(u,py)
call SaveInteger(udg_ht,task,1,i - 1)
else
call SaveInteger(udg_ht,task,1,0)
endif
set g = CreateGroup()
call GroupEnumUnitsInRange(g,px,py,90.0,iff)
loop
set v = FirstOfGroup(g)
exitwhen v == null
call GroupRemoveUnit(g,v)
if IsUnitAliveBJ(v) and IsUnitType(v,UNIT_TYPE_STRUCTURE)==false and IsUnitInGroup(v,m)==false then
call GroupAddUnit(m,v)//伤害过的单位增加到单位组
set damage = 50+level*70+2.6*GetHeroInt(caster,true)
if IsUnitType(v,UNIT_TYPE_HERO) then
call UnitMagicDamageTarget(caster,v,damage,1)
set k = true
else
call UnitMagicDamageTarget(caster,v,damage*0.30,5)
endif
endif
endloop
call DestroyGroup(g)
if k then
call KillUnit(u)
call SaveInteger(udg_ht,task,1,0)
endif
else
if IsUnitAliveBJ(u) then
call RemoveUnit(u)
endif
call DestroyTimer(t)
call DestroyGroup(m)
call FlushChildHashtable(udg_ht,task)
endif
//========
set t = null
set caster = null
set u = null
set v = null
set m = null
set g = null
set iff = null
endfunction
function Trig_Remilia01_Actions takes nothing returns nothing
local unit caster = GetTriggerUnit()
local unit u
local real ox = GetUnitX(caster)
local real oy = GetUnitY(caster)
local real tx = GetSpellTargetX()
local real ty = GetSpellTargetY()
local real a = Atan2(ty-oy,tx-ox)
local integer level = GetUnitAbilityLevel(caster,'A0CD')
local group m = CreateGroup()//已经伤害过的单位保存于此
local timer t = CreateTimer()
local integer task = GetHandleId(t)
//========
local real abilitycooldownlv01 = 5
local real abilitycooldownlv02 = 5
local real abilitycooldownlv03 = 5
local real abilitycooldownlv04 = 5
if UnitHasItemOfTypeBJ(caster, 'I00B') then
if GetUnitAbilityLevel(caster,GetSpellAbilityId()) == 1 then
call Item_HeroAbilityCoolDownReset(caster,GetSpellAbilityId(),abilitycooldownlv01)
elseif GetUnitAbilityLevel(caster,GetSpellAbilityId()) == 2 then
call Item_HeroAbilityCoolDownReset(caster,GetSpellAbilityId(),abilitycooldownlv02)
elseif GetUnitAbilityLevel(caster,GetSpellAbilityId()) == 3 then
call Item_HeroAbilityCoolDownReset(caster,GetSpellAbilityId(),abilitycooldownlv03)
elseif GetUnitAbilityLevel(caster,GetSpellAbilityId()) == 4 then
call Item_HeroAbilityCoolDownReset(caster,GetSpellAbilityId(),abilitycooldownlv04)
endif
endif
//========
set u = CreateUnit(GetOwningPlayer(caster),'n029',ox,oy,bj_RADTODEG*a)
call SaveUnitHandle(udg_ht,task,0,caster)
call SaveUnitHandle(udg_ht,task,1,u)
call SaveGroupHandle(udg_ht,task,2,m)
call SaveInteger(udg_ht,task,0,level)
call SaveInteger(udg_ht,task,1,75)//射程:75*24.0 = 1800
call SaveReal(udg_ht,task,0,a)
call SaveReal(udg_ht,task,1,24.0)
call TimerStart(t,0.02,true,function Trig_Remilia01_Main)
set caster = null
set u = null
set m = null
set t = null
endfunction
function InitTrig_Remilia01 takes nothing returns nothing
endfunction
==========================
其余招收
主策
报名及要求:
http://www.touhou.cc/bbs/forum.php?mod=viewthread&tid=50590
杂务:
有WE使用基础的不限 有意向请回帖留言
无基础的近期不考虑录用 如有兴趣请尝试学习掌握相关基础知识
==========================
文职人员
http://www.touhou.cc/bbs/forum.php?mod=viewthread&tid=69701
==========================
招满即止
本贴禁水 违者** |
|