[System] Fade Unit Color

Thảo luận trong 'World Editor' bắt đầu bởi dh-g, 24/12/12.

  1. dh-g

    dh-g Fire in the hole!

    Tham gia ngày:
    29/8/09
    Bài viết:
    2,654
    Nơi ở:
    Q1 TP.HCM
    Fade Unit Color

    PHP:
    library FUCR32 /* by Dhguardianes v1.02 and Special thank kingkingyyk3 for ideas (System)
    */ 
    requires R32 /* v1.10 http://goo.gl/ag8a7
    ************************************************************************************* 
    * _____         _      _   _       _ _    ____      _            
    *|  ___|_ _  __| | ___| | | |_ __ (_) |_ / ___|___ | | ___  _ __ 
    *| |_ / _` |/ _` |/ _ \ | | | '_ \| | __| |   / _ \| |/ _ \| '__|
    *|  _| (_| | (_| |  __/ |_| | | | | | |_| |__| (_) | | (_) | |   
    *|_|  \__,_|\__,_|\___|\___/|_| |_|_|\__|\____\___/|_|\___/|_| 
    *
    ************************************************************************************* 
    *    he thong nay giup thay doi mau cua unit fade theo thoi gian
    *    system nay ban co the su dung cho nhieu muc. dich' khac' nhau! chang han. lam` spell Mirrior
    *    tao mot dummy ao? mo` dan` theo thoi gian, nhu unit do' dang danh' rat nhanh! ra kha' nhieu` bong' via'!
    *
    *    cach su dung:
    *    Red: 255
    *    Green: 255
    *    Blue: 255
    *    Alpha: 255( de so 0 se trong suot)
    *    function FadeUnitColor takes unit U, real R, real G, real B, real A, real sR, real sG, real sB, real sA, real dur returns nothing

    *
    *    Credit:
    *    xin cam on kingkingyyk3 ve y tuong cach thuc!
    *
    ***************************************************************************************/
        
    private struct repeat extends RepeatData
            unit caster
            real R
            real G
            real B
            real A
                
            real vR
            real vG
            real vB
            real vA
                
            real 
    oR
            
    real oG
            real oB
            real oA
                
            method onEnd takes nothing returns nothing
                set this
    .caster null
            endmethod
                
            method onLoop takes nothing returns nothing
                set this
    .oR = this.oR + this.R
                set this
    .oG this.oG this.G
                set this
    .oB this.oB this.B
                set this
    .oA this.oA this.A
                call SetUnitVertexColor
    (this.casterR2I(this.oR), R2I(this.oG), R2I(this.oB), R2I(this.oA))
            
    endmethod
        endstruct
            
        
    function FadeUnitColor takes unit Uinteger Rinteger Ginteger Binteger Ainteger sRinteger sGinteger sBinteger sAreal dur returns nothing
            local repeat this 
    repeat.create(R32_Perioddur)
            
    local integer tik R2I(dur R32_Period)
                
            
    set this.caster U
            set this
    .oR = R
            set this
    .oG G
            set this
    .oB B
            set this
    .oA A
            
            set this
    .vR sR
            set this
    .vG sG
            set this
    .vB sB
            set this
    .vA sA
            
            set this
    .= (this.vR this.oR) / tik
            set this
    .= (this.vG this.oG) / tik
            set this
    .= (this.vB this.oB) / tik
            set this
    .= (this.vA this.oA) / tik
            call SetUnitVertexColor
    (UR2I(R), R2I(G), R2I(B), R2I(A))
        
    endfunction
    endlibrary

    Giới thiệu

    hệ thống này giúp bạn có thể thay đổi màu sắc của một unit fade theo thời gian

    có thể giúp bạn làm những mục đích khác nhau như làm một spell attack ra bóng vía và bạn muốn bóng vía đó sống động hơn hãy làm chút phép màu bằng system này :D
    nó hok đơn thuần là đổi màu sắc mà còn có thể đổi cả alpha giúp unit bạn trong suốt theo ý muốn hoặc trở lại bình thường theo ý thích của bạn!


    Trình hàm

    function FadeUnitColor takes unit U, real R, real G, real B, real A, real sR, real sG, real sB, real sA, real dur returns nothing


    • U là unit bị ảnh hưởng
    • R là màu red của unit!
    • G là màu green của unit!
    • B là màu blue của unit!
    • A là Alpha của unit set 255 sẽ hiện hình nếu set 0 thì tàng hình(trong suốt)
    • sR là màu red mình muốn đổi
    • sG là màu green mình muốn đổi
    • sB là màu blue mình muốn đổi
    • sA là alpha mình muốn đổi
    • dur là thời gian (real) mình muốn nó đổi màu!


    Chú ý

    System này yêu cầu phải có R32 chỉ chấp nhận ver v1.10 hoặc mới hơn!

    và gửi lời cảm ơn tới kingkingyyk3 về cách thức ý tưởng

    Download map demo
    Link MF:
    SystemFadeUnitColor.w3x
     
    Chỉnh sửa cuối: 26/5/13
  2. dh-g

    dh-g Fire in the hole!

    Tham gia ngày:
    29/8/09
    Bài viết:
    2,654
    Nơi ở:
    Q1 TP.HCM
    hầu như cái sys này không được ai wan tâm đến :-<
     
    Yakumo, ZhengHe, Sinni and 5 others like this.
  3. YAN[asian]

    YAN[asian] Mario & Luigi

    Tham gia ngày:
    27/3/07
    Bài viết:
    812
    Cái này hay đấy chứ! Mỗi tội là Jass... Để xem có hiểu để chuyển thành GUI đc ko nào...
     
  4. Meepolisk

    Meepolisk Donkey Kong

    Tham gia ngày:
    8/2/08
    Bài viết:
    336
    thật ra Jass dễ đọc, dễ dùng hơn GUI nhìu :| và Jass thì dùng library (system chẳng hạn) tiện hơn và dễ hơn
     
  5. Daric™

    Daric™ C O N T R A

    Tham gia ngày:
    7/3/12
    Bài viết:
    1,853
    Nơi ở:
    Porizon
    đa phần dân rành jass đều bay sang hive cả rồi anh ơi, ít ai chú ý chơi cái box we gay vn này lắm >:P
     
  6. dh-g

    dh-g Fire in the hole!

    Tham gia ngày:
    29/8/09
    Bài viết:
    2,654
    Nơi ở:
    Q1 TP.HCM
    đã có ver 1.01 tối ưu code và nâng cấp R32
     
  7. HiroshiKaze

    HiroshiKaze Youtube Master Race

    Tham gia ngày:
    19/8/12
    Bài viết:
    66
    Nơi ở:
    Tp.HCM
    ờ trông có vẽ tốt hơn cái trước rùi :8cool_tire:
     

Chia sẻ trang này