[JX] [Release] Code Vòng Sáng Trang Bị [VNG ISO]
Hello & Welcome to our community. Is this your first visit? Đăng Ký
Follow us on
Follow us on Facebook Follow us on Twitter Linked In Flickr Watch us on YouTube My Space Blogger
 
Trang 1 của 5 1 2 3 ... CuốiCuối
Kết quả 1 đến 10 của 45
  1. #1
    Thành Viên
    Ngày tham gia
    Jul 2008
    Bài viết
    69
    Thanks
    5
    Thanked 157 Times in 18 Posts

    [Release] Code Vòng Sáng Trang Bị [VNG ISO]

    Như đã hứa. hôm nay mình share code vòng sáng cho các bạn.

    Demo:


    Code:

    [1] Khai báo các biến và các hàm
    Code:
        int m_color ;
        int m_time ;
        int n_mpoint;
        int m_count[8];
        unsigned int m_nColor;
        int GetRectItem(int _w, int _h);
        void DrawPoint(int x, int y, unsigned int wColor);
        void DrawLight(int x, int y, int _w, int _h, int unit, int unitboder);
    [2] Các hàm draw vòng sáng
    Code:
    int KWndObjectMatrix::GetRectItem(int _w, int _h)
    {
        int i;
        if       (_w == 1 && _h == 1) i = 0;
        else if(_w == 1 && _h == 2) i = 1;
        else if(_w == 1 && _h == 3) i = 2;
        else if(_w == 1 && _h == 4) i = 3;
        else if(_w == 1 && _h == 5) i = 4;
        else if(_w == 2 && _h == 1) i = 5;
        else if(_w == 2 && _h == 2) i = 6;
        else if(_w == 2 && _h == 3) i = 7;
        return i;
    }
    
    
    void KWndObjectMatrix::DrawPoint(int x, int y, unsigned int wColor)
    {
        KRUPoint Rect;
        Rect.Color.Color_dw = wColor;
        Rect.oPosition.nX = x;
        Rect.oPosition.nY = y;
        Rect.oPosition.nZ = 0;
        g_pRepresentShell->DrawPrimitives(1, &Rect, RU_T_POINT, true);
    }
    
    void KWndObjectMatrix::DrawLight(int x, int y, int _w, int _h, int unit, int unitboder)
    {
        int r_color = 1; // 1::Yellow, 2::Purple, 3::White 
        x = x - 1;
        y = y - 1;
        int w = _w*unit - unitboder*2 + 1;
        int h = _h*unit - unitboder*2 + 1;
        int nX = x + w;
        int nY = y + h;
        int i = 0;
        int j = 0;
        int n_point = w + h;
        int a[400];
        int m_pb = 268/(w + h);
        int color = 255;
        for(i;i<2*n_point;i++)
        {
            if(color>=0)
            {
            a[i] = color;
            color = color - m_pb;
            }
            else
            {
                a[i] = 0;
            }
            if(i==n_point)
                color = 255;
        }
    
        i = m_count[GetRectItem( _w, _h)];
    
        while (y < nY)
        {
            if(r_color == 1) // yellow
            {
                m_nColor = 0xFF000000 | a[i] << 16 |  a[i] << 8 | 0;
            }
            else if(r_color == 2) //purple
            {
                m_nColor = 0xFF000000 | a[i] << 16 | 0 | a[i] << 0;
            }
            else if(r_color == 3) //white
            {
                m_nColor = 0xFF000000 | a[i] << 16 |  a[i] << 8 | a[i] << 0;
            }
            this->DrawPoint(x+w,nY,m_nColor);
            this->DrawPoint(x,y+j,m_nColor);
            nY = nY - 1;
            i++;
            j++;
            if(i == n_point) i=0;
            if(m_count[GetRectItem( _w, _h)] >= n_point) m_count[GetRectItem( _w, _h)] = 0;
        }
    
        j=0;
        i = m_count[GetRectItem( _w, _h)] + h;
        
        while (x < nX)
        {
            if(r_color == 1) // yellow
            {
                m_nColor = 0xFF000000 | a[i] << 16 |  a[i] << 8 | 0;
            }
            else if(r_color == 2) //purple
            {
                m_nColor = 0xFF000000 | a[i] << 16 | 0 | a[i] << 0;
            }
            else if(r_color == 3) //white
            {
                m_nColor = 0xFF000000 | a[i] << 16 |  a[i] << 8 | a[i] << 0;
            }
            this->DrawPoint(nX,y,m_nColor);
            this->DrawPoint(x + j,y+h,m_nColor);
            nX = nX - 1;
            i=i+1;
            j=j+1;
            if(i == n_point) i=0;
            if(m_count[GetRectItem( _w, _h)] >= n_point) m_count[GetRectItem( _w, _h)] = 0;
        }
    }
    [3] Cách sử dụng
    Code:
    void KWndObjectMatrix::PaintWindow()
    {
        ++m_time;
        
        if (m_time % 4 == 0)
        {    
            for(int i =0;i<8;i++)
                ++m_count[i];
        }
    
        KWndWindow::PaintWindow();
        KRUShadow    Shadow;
        for (int i = 0; i < m_nNumObjects; i++)
        {
            KUiDraggedObject* pObj = &m_pObjects[i];
            Shadow.Color.Color_dw = 0;
            if (i == REPLACE_ITEM_INDEX(m_nPutPosX))
                Shadow.Color.Color_dw = l_BgColors[4];
            else if ((m_Style & OBJCONT_F_MOUSE_HOVER) && m_nMouseOverObj == i)
                Shadow.Color.Color_dw = l_BgColors[3];
            else if (m_Style & OBJCONT_S_HAVEOBJBGCOLOR)
            {
                KUiObjAtContRegion    Obj;
                Obj.Obj.uGenre = pObj->uGenre;
                Obj.Obj.uId = pObj->uId;
                Obj.Region.h = Obj.Region.v = 0;
                Obj.Region.Width = Obj.Region.Height = 0;
                Obj.nContainer = m_nContainerId;
    
                ITEM_IN_ENVIRO_PROP eProp = (ITEM_IN_ENVIRO_PROP)g_pCoreShell->
                    GetGameData(GDI_ITEM_IN_ENVIRO_PROP, (unsigned int)&Obj, 0);
                if (eProp == IIEP_NORMAL)
                    Shadow.Color.Color_dw = l_BgColors[0];
                else if (eProp == IIEP_NOT_USEABLE)
                    Shadow.Color.Color_dw = l_BgColors[1];
                else if (eProp == IIEP_SPECIAL)
                    Shadow.Color.Color_dw = l_BgColors[2];
            }
    
            int width = m_nUnitWidth * pObj->DataW - m_nUnitBorder * 2;
            int height = m_nUnitHeight * pObj->DataH - m_nUnitBorder * 2;
            Shadow.oPosition.nX = m_nAbsoluteLeft + m_nUnitWidth * pObj->DataX + m_nUnitBorder;
            Shadow.oPosition.nY = m_nAbsoluteTop + m_nUnitHeight * pObj->DataY + m_nUnitBorder;
            if (Shadow.Color.Color_dw)
            {
                Shadow.oEndPos.nX = Shadow.oPosition.nX + width;
                Shadow.oEndPos.nY = Shadow.oPosition.nY + height;
                g_pRepresentShell->DrawPrimitives(1, &Shadow, RU_T_SHADOW, true);
            }
    
            g_pCoreShell->DrawGameObj(pObj->uGenre, pObj->uId, Shadow.oPosition.nX, Shadow.oPosition.nY, width, height, 0);
            this->DrawLight(Shadow.oPosition.nX,Shadow.oPosition.nY, pObj->DataW, pObj->DataH , m_nUnitWidth, m_nUnitBorder);
            
        }
        if (m_nPutPosX >= 0)
        {
            Shadow.oPosition.nX = m_nAbsoluteLeft + m_nUnitWidth * m_nPutPosX + m_nUnitBorder;
            Shadow.oPosition.nY = m_nAbsoluteTop + m_nUnitHeight * m_nPutPosY + m_nUnitBorder;
            Shadow.oEndPos.nX = Shadow.oPosition.nX + m_nUnitWidth * m_nPutWidth - m_nUnitBorder * 2;
            Shadow.oEndPos.nY = Shadow.oPosition.nY + m_nUnitHeight * m_nPutHeight - m_nUnitBorder * 2;
            Shadow.Color.Color_dw = l_BgColors[4];
            g_pRepresentShell->DrawPrimitives(1, &Shadow, RU_T_SHADOW, true);
        }
    }
    [4] Gợi ý phân loại Item cho ai chưa bik làm
    Down code item do trananh share, thả vào source. thêm và KItem.h hàm
    Code:
    int        GetType() const { return m_CommonAttrib.m_nTypeItem; };
    Vào CoreShell tìm và khai báo CoreShell.h
    Code:
    virtual int GetItemType(int nID) = 0;
    thêm hàm vào CoreShell.cpp
    Code:
    int    KCoreShell::GetItemType(int nID)
    {
        return Item[nID].GetType();
    }
    cách dùng tự hiểu nhé ^^



    Mì ăn liền:
    [Only registered and activated users can see links. ]


    Ai ko làm đc thì múc file về máy sài. ko spam hỏi linh tinh.
    Lần sửa cuối bởi FanLoveJX, ngày 14-09-12 lúc 09:12 AM.
    Khách viếng thăm hãy cùng FanLoveJX xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  2. The Following 34 Users Say Thank You to FanLoveJX For This Useful Post:

    7602119 (25-09-12), alone1o2 (25-09-12), assaa (13-09-12), banynavy (13-09-12), chaoban6 (24-06-13), CopBaDauRang (13-09-12), deathrock (13-04-13), debaf9 (25-09-12), evilcat87 (16-09-12), f-fantasy (03-07-13), HeavenGames (13-09-12), HoangThaoBe (13-09-12), J4cksparrow (16-09-12), jxvietnam (14-09-12), kenthp (16-09-12), kuldo (06-11-12), LBLN2N (13-09-12), Learning (13-09-12), Linh_JX (13-09-12), lzlsky301 (13-09-12), mrtran0781 (13-09-12), nametruong00 (13-09-12), nh0cc0n52 (30-11-12), nhoxmap_b7 (13-09-12), satthupro95 (13-04-13), shocklads (13-09-12), thaihoa91 (13-09-12), thanhtunghk (14-09-12), trananh88vt (13-09-12), Trung95 (13-09-12), Tuan565 (13-09-12), tunglt (23-09-12), Tung_Meo (29-11-12), z0nkazu04 (17-01-21)

  3. #2
    Thành Viên Tâm Huyết assaa's Avatar
    Ngày tham gia
    Jul 2009
    Bài viết
    915
    Thanks
    271
    Thanked 416 Times in 236 Posts

    Ðề: [Release] Code Vòng Sáng Trang Bị [VNG ISO]

    tem thank
    Cái này vẫn bị item nào cũng có vòng sáng phải ko bạn.
    Khách viếng thăm hãy cùng assaa xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  4. #3
    Thành Viên
    Ngày tham gia
    Jan 2010
    Bài viết
    180
    Thanks
    83
    Thanked 177 Times in 49 Posts

    Ðề: [Release] Code Vòng Sáng Trang Bị [VNG ISO]

    Thanks pro đã có lòng share cho bọn newbie như em sài hihi !
    Chờ mãi cũng có đc cái mình cần hihi
    Đúng là OldDream.rar
    Khách viếng thăm hãy cùng trananh88vt xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  5. #4
    Thành Viên
    Ngày tham gia
    Nov 2011
    Bài viết
    263
    Thanks
    70
    Thanked 84 Times in 34 Posts

    Ðề: [Release] Code Vòng Sáng Trang Bị [VNG ISO]

    cho hỏi dùng được cho những sever nào thế hả bạn.Có dùng cho sever jxvietnam không hả bạn
    Lần sửa cuối bởi ps1990, ngày 13-09-12 lúc 11:50 AM.
    Khách viếng thăm hãy cùng ps1990 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  6. #5
    Thành Viên
    Ngày tham gia
    Mar 2011
    Bài viết
    35
    Thanks
    9
    Thanked 0 Times in 0 Posts

    Ðề: [Release] Code Vòng Sáng Trang Bị [VNG ISO]

    chưa biết cách làm nhưng củng thanks chủ thớt vì một vo lam off lớn mạnh
    Khách viếng thăm hãy cùng CopBaDauRang xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  7. #6
    Thành Viên
    Ngày tham gia
    Jan 2010
    Bài viết
    180
    Thanks
    83
    Thanked 177 Times in 49 Posts

    Ðề: [Release] Code Vòng Sáng Trang Bị [VNG ISO]

    Trích dẫn Gửi bởi ps1990 [Only registered and activated users can see links. ]
    cho hỏi dùng được cho những sever nào thế hả bạn.Có dùng cho sever jxvietnam không hả bạn
    Cái này dùng cho Source của JX nha bạn hì !
    Nếu bạn là dev source thì sẽ hiểu hì.
    Khách viếng thăm hãy cùng trananh88vt xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  8. #7
    Thành Viên
    Ngày tham gia
    Sep 2008
    Bài viết
    72
    Thanks
    21
    Thanked 25 Times in 8 Posts

    Ðề: [Release] Code Vòng Sáng Trang Bị [VNG ISO]

    Buồn vậy, hàng hot ntn mà chỉ dành cho Dev, ko biết đến bao giờ dân đen mới đc xài
    Khách viếng thăm hãy cùng shocklads xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  9. #8
    Thành Viên Tâm Huyết nhocken2030's Avatar
    Ngày tham gia
    Nov 2011
    Bài viết
    535
    Thanks
    30
    Thanked 488 Times in 92 Posts

    Ðề: [Release] Code Vòng Sáng Trang Bị [VNG ISO]

    Down về bỏ zô đâu zậy mọi người
    Cần gì liên hệ F/b : [Only registered and activated users can see links. ]

  10. #9
    Thành Viên
    Ngày tham gia
    Jan 2010
    Bài viết
    180
    Thanks
    83
    Thanked 177 Times in 49 Posts

    Ðề: [Release] Code Vòng Sáng Trang Bị [VNG ISO]

    Trích dẫn Gửi bởi nhocken2030 [Only registered and activated users can see links. ]
    Down về bỏ zô đâu zậy mọi người
    Down về bỏ vào src build Project xong thấy lỗi tắt đi ngủ hihi !
    Mình cũng chưa test nữa hì !
    Khách viếng thăm hãy cùng trananh88vt xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  11. #10
    Thành Viên Tâm Huyết assaa's Avatar
    Ngày tham gia
    Jul 2009
    Bài viết
    915
    Thanks
    271
    Thanked 416 Times in 236 Posts

    Ðề: [Release] Code Vòng Sáng Trang Bị [VNG ISO]

    Trích dẫn Gửi bởi SystemError [Only registered and activated users can see links. ]
    vẫn chưa chuẩn như vng.
    Chưa chuẩn nhưng cũng đủ để dùng mà
    Khách viếng thăm hãy cùng assaa xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

 

 
Trang 1 của 5 1 2 3 ... CuốiCuối

Các Chủ đề tương tự

  1. [KT] [Release] Trang chủ Kiếm thế khá đầy đủ chức năng
    Bởi Sesshomaru trong diễn đàn Releases
    Trả lời: 20
    Bài viết cuối: 24-01-13, 07:01 PM
  2. [Release] Trang đăng kí đơn giản cho ai cần.
    Bởi MIKETYSOn trong diễn đàn Gunz Online
    Trả lời: 4
    Bài viết cuối: 03-07-10, 07:43 PM
  3. [Release] MVTWeb 1.0, Code ASP Cho người việt
    Bởi vutuyen trong diễn đàn SQL Server & Website
    Trả lời: 66
    Bài viết cuối: 26-03-10, 01:39 PM
  4. [Release] Các trang Web bàn luận về Server
    Bởi acma3978 trong diễn đàn Releases
    Trả lời: 7
    Bài viết cuối: 18-03-08, 07:56 PM

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •  
Múi giờ GMT +7. Bây giờ là 10:58 AM.
vBulletin®, Copyright ©2000-2011, Jelsoft Enterprises Ltd.
CLBGamesVN không chịu trách nhiệm về Luật Bản Quyền của các tài liệu, bài viết v.v...được đăng tải trên diễn đàn này.
Diễn đàn phát triển dưới sự đóng góp của tất cả thành viên. BQT chỉ là những người thành lập ra sân chơi, quản lý và duy trì về mặt kỹ thuật, nội dung khi hợp lệ.