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.caster, R2I(this.oR), R2I(this.oG), R2I(this.oB), R2I(this.oA)) endmethod endstruct function FadeUnitColor takes unit U, integer R, integer G, integer B, integer A, integer sR, integer sG, integer sB, integer sA, real dur returns nothing local repeat this = repeat.create(R32_Period, dur) 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.R = (this.vR - this.oR) / tik set this.G = (this.vG - this.oG) / tik set this.B = (this.vB - this.oB) / tik set this.A = (this.vA - this.oA) / tik call SetUnitVertexColor(U, R2I(R), R2I(G), R2I(B), R2I(A)) endfunctionendlibrary 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 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
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