[SNIPPET] Make the 'purchase GC' button take you to a webpage

Results 1 to 3 of 3
  1. #1
    Your average Dutch guy Laenoar is offline
    MemberRank
    Apr 2013 Join Date
    The NetherlandsLocation
    384Posts

    [SNIPPET] Make the 'purchase GC' button take you to a webpage

    In Eclipse Studio, FrontEndWarZ.cpp, search for
    Code:
    void FrontendWarZ::eventRequestMyServerList(r3dScaleformMovie* pMovie, const Scaleform::GFx::Value* args, unsigned argCount)
    Under that add, but obviously edit the link
    Code:
    void FrontendWarZ::eventStorePurchaseGPRequest(r3dScaleformMovie* pMovie, const Scaleform::GFx::Value* args, unsigned argCount){
        ShellExecute(NULL, "open", "https://www.account.daysafterdead.pw/donate.php?ref=marketplace", NULL, NULL, SW_SHOWNORMAL);
    }



    Search for
    Code:
    gfxMovie.RegisterEventHandler("eventPlayGame", MAKE_CALLBACK(eventPlayGame));
    Under that add
    Code:
    gfxMovie.RegisterEventHandler("eventStorePurchaseGPRequest", MAKE_CALLBACK(eventStorePurchaseGPRequest));



    In Eclipse Studio, FrontEndWarZ.h, search for
    Code:
    void eventPlayGame(r3dScaleformMovie* pMovie, const Scaleform::GFx::Value* args, unsigned argCount);
    Under that add
    Code:
    void eventStorePurchaseGPRequest(r3dScaleformMovie* pMovie, const Scaleform::GFx::Value* args, unsigned argCount);



    Search for
    Code:
    #include "CkHttp.h"
    Under that add
    Code:
    #include "shellapi.h"



    Go to EclipseStudio\Sources and make a new file called shellapi.h, in it add
    Spoiler:
    Code:
    #ifndef _SHELLAPI_H
    #define _SHELLAPI_H
    #if __GNUC__ >= 3
    #pragma GCC system_header
    #endif
    
    
    #ifdef __cplusplus
    extern "C" {
    #endif
    #define WINSHELLAPI DECLSPEC_IMPORT
    #define ABE_LEFT    0
    #define ABE_TOP    1
    #define ABE_RIGHT    2
    #define ABE_BOTTOM    3
    #define ABS_AUTOHIDE    1
    #define ABS_ALWAYSONTOP    2
    #define SEE_MASK_CLASSNAME    1
    #define SEE_MASK_CLASSKEY    3
    #define SEE_MASK_IDLIST    4
    #define SEE_MASK_INVOKEIDLIST   12
    #define SEE_MASK_ICON    0x10
    #define SEE_MASK_HOTKEY    0x20
    #define SEE_MASK_NOCLOSEPROCESS    0x40
    #define SEE_MASK_CONNECTNETDRV    0x80
    #define SEE_MASK_FLAG_DDEWAIT    0x100
    #define SEE_MASK_DOENVSUBST    0x200
    #define SEE_MASK_FLAG_NO_UI    0x400
    #define SEE_MASK_NO_CONSOLE    0x8000
    #define SEE_MASK_UNICODE    0x10000
    #define SEE_MASK_ASYNCOK    0x100000
    #define SEE_MASK_HMONITOR    0x200000
    #define ABM_NEW    0
    #define ABM_REMOVE    1
    #define ABM_QUERYPOS    2
    #define ABM_SETPOS    3
    #define ABM_GETSTATE    4
    #define ABM_GETTASKBARPOS    5
    #define ABM_ACTIVATE    6
    #define ABM_GETAUTOHIDEBAR    7
    #define ABM_SETAUTOHIDEBAR    8
    #define ABM_WINDOWPOSCHANGED    9
    #define ABN_STATECHANGE        0
    #define ABN_POSCHANGED        1
    #define ABN_FULLSCREENAPP    2
    #define ABN_WINDOWARRANGE    3
    #define NIM_ADD    0
    #define NIM_MODIFY    1
    #define NIM_DELETE    2
    #if _WIN32_IE >= 0x0500
    #define NOTIFYICON_VERSION 3
    #define NIM_SETFOCUS    3
    #define NIM_SETVERSION    4
    #endif
    #define NIF_MESSAGE    0x00000001
    #define NIF_ICON    0x00000002
    #define NIF_TIP        0x00000004
    #define NIF_STATE    0x00000008
    #if (_WIN32_IE >= 0x0500)
    #define NIF_INFO    0x00000010
    #endif
    #if (_WIN32_IE >= 0x0600)
    #define NIF_GUID    0x00000020
    #endif
    #if (_WIN32_IE >= 0x0500)
    #define NIIF_NONE    0x00000000
    #define NIIF_INFO    0x00000001
    #define NIIF_WARNING    0x00000002
    #define NIIF_ERROR    0x00000003
    #endif
    #if (_WIN32_IE >= 0x0600)
    #define NIIF_ICON_MASK    0x0000000F
    #define NIIF_NOSOUND    0x00000010
    #endif
    #define NIS_HIDDEN    1
    #define NIS_SHAREDICON    2
    #define SE_ERR_FNF    2
    #define SE_ERR_PNF    3
    #define SE_ERR_ACCESSDENIED    5
    #define SE_ERR_OOM    8
    #define SE_ERR_DLLNOTFOUND    32
    #define SE_ERR_SHARE    26
    #define SE_ERR_ASSOCINCOMPLETE    27
    #define SE_ERR_DDETIMEOUT    28
    #define SE_ERR_DDEFAIL    29
    #define SE_ERR_DDEBUSY    30
    #define SE_ERR_NOASSOC    31
    #define FO_MOVE    1
    #define FO_COPY    2
    #define FO_DELETE    3
    #define FO_RENAME    4
    #define FOF_MULTIDESTFILES    1
    #define FOF_CONFIRMMOUSE    2
    #define FOF_SILENT    4
    #define FOF_RENAMEONCOLLISION    8
    #define FOF_NOCONFIRMATION    16
    #define FOF_WANTMAPPINGHANDLE    32
    #define FOF_ALLOWUNDO    64
    #define FOF_FILESONLY    128
    #define FOF_SIMPLEPROGRESS    256
    #define FOF_NOCONFIRMMKDIR    512
    #define FOF_NOERRORUI    1024
    #define FOF_NOCOPYSECURITYATTRIBS    2048
    #define PO_DELETE 19
    #define PO_RENAME 20
    #define PO_PORTCHANGE 32
    #define PO_REN_PORT 52
    #define SHGFI_ICON    256
    #define SHGFI_DISPLAYNAME    512
    #define SHGFI_TYPENAME    1024
    #define SHGFI_ATTRIBUTES    2048
    #define SHGFI_ICONLOCATION    4096
    #define SHGFI_EXETYPE 8192
    #define SHGFI_SYSICONINDEX 16384
    #define SHGFI_LINKOVERLAY 32768
    #define SHGFI_SELECTED 65536
    #define SHGFI_ATTR_SPECIFIED 131072
    #define SHGFI_LARGEICON    0
    #define SHGFI_SMALLICON    1
    #define SHGFI_OPENICON    2
    #define SHGFI_SHELLICONSIZE    4
    #define SHGFI_PIDL    8
    #define SHGFI_USEFILEATTRIBUTES    16
    #define SHERB_NOCONFIRMATION 1
    #define SHERB_NOPROGRESSUI 2
    #define SHERB_NOSOUND 4
    
    
    typedef WORD FILEOP_FLAGS;
    typedef WORD PRINTEROP_FLAGS;
    #include <pshpack2.h>
    typedef struct _AppBarData {
        DWORD    cbSize;
        HWND    hWnd;
        UINT    uCallbackMessage;
        UINT    uEdge;
        RECT    rc;
        LPARAM lParam;
    } APPBARDATA,*PAPPBARDATA;
    DECLARE_HANDLE(HDROP);
    
    
    typedef struct _NOTIFYICONDATAA {
        DWORD cbSize;
        HWND hWnd;
        UINT uID;
        UINT uFlags;
        UINT uCallbackMessage;
        HICON hIcon;
    #if _WIN32_IE >= 0x0500
        CHAR szTip[128];
        DWORD dwState;
        DWORD dwStateMask;
        CHAR szInfo[256];
    //    _ANONYMOUS_UNION union {
    //        UINT uTimeout;
    //        UINT uVersion;
    //    } DUMMYUNIONNAME;
        CHAR szInfoTitle[64];
        DWORD dwInfoFlags;
    #else
        CHAR szTip[64];
    #endif
    #if _WIN32_IE >= 0x600
        GUID guidItem;
    #endif
    } NOTIFYICONDATAA,*PNOTIFYICONDATAA;
    
    
    typedef struct _NOTIFYICONDATAW {
        DWORD cbSize;
        HWND hWnd;
        UINT uID;
        UINT uFlags;
        UINT uCallbackMessage;
        HICON hIcon;
    #if _WIN32_IE >= 0x0500
        WCHAR szTip[128];
        DWORD dwState;
        DWORD dwStateMask;
        WCHAR szInfo[256];
    //    _ANONYMOUS_UNION union {
    //        UINT uTimeout;
    //        UINT uVersion;
    //    } DUMMYUNIONNAME;
        WCHAR szInfoTitle[64];
        DWORD dwInfoFlags;
    #else
        WCHAR szTip[64];
    #endif
    #if _WIN32_IE >= 0x600
        GUID guidItem;
    #endif
    } NOTIFYICONDATAW,*PNOTIFYICONDATAW;
    
    
    typedef struct _SHELLEXECUTEINFOA {
        DWORD cbSize;
        ULONG fMask;
        HWND hwnd;
        LPCSTR lpVerb;
        LPCSTR lpFile;
        LPCSTR lpParameters;
        LPCSTR lpDirectory;
        int nShow;
        HINSTANCE hInstApp;
        PVOID lpIDList;
        LPCSTR lpClass;
        HKEY hkeyClass;
        DWORD dwHotKey;
        HANDLE hIcon;
        HANDLE hProcess;
    } SHELLEXECUTEINFOA,*LPSHELLEXECUTEINFOA;
    typedef struct _SHELLEXECUTEINFOW {
        DWORD cbSize;
        ULONG fMask;
        HWND hwnd;
        LPCWSTR lpVerb;
        LPCWSTR lpFile;
        LPCWSTR lpParameters;
        LPCWSTR lpDirectory;
        int nShow;
        HINSTANCE hInstApp;
        PVOID lpIDList;
        LPCWSTR lpClass;
        HKEY hkeyClass;
        DWORD dwHotKey;
        HANDLE hIcon;
        HANDLE hProcess;
    } SHELLEXECUTEINFOW,*LPSHELLEXECUTEINFOW;
    typedef struct _SHFILEOPSTRUCTA {
        HWND hwnd;
        UINT wFunc;
        LPCSTR pFrom;
        LPCSTR pTo;
        FILEOP_FLAGS fFlags;
        BOOL fAnyOperationsAborted;
        PVOID hNameMappings;
        LPCSTR lpszProgressTitle;
    } SHFILEOPSTRUCTA,*LPSHFILEOPSTRUCTA;
    typedef struct _SHFILEOPSTRUCTW {
        HWND hwnd;
        UINT wFunc;
        LPCWSTR pFrom;
        LPCWSTR pTo;
        FILEOP_FLAGS fFlags;
        BOOL fAnyOperationsAborted;
        PVOID hNameMappings;
        LPCWSTR lpszProgressTitle;
    } SHFILEOPSTRUCTW,*LPSHFILEOPSTRUCTW;
    typedef struct _SHFILEINFOA {
        HICON hIcon;
        int iIcon;
        DWORD dwAttributes;
        CHAR szDisplayName[MAX_PATH];
        CHAR szTypeName[80];
    } SHFILEINFOA;
    typedef struct _SHFILEINFOW {
        HICON hIcon;
        int iIcon;
        DWORD dwAttributes;
        WCHAR szDisplayName[MAX_PATH];
        WCHAR szTypeName[80];
    } SHFILEINFOW;
    typedef struct _SHQUERYRBINFO {
        DWORD   cbSize;
        __int64 i64Size;
        __int64 i64NumItems;
    } SHQUERYRBINFO, *LPSHQUERYRBINFO;
    #include <poppack.h>
    
    
    LPWSTR * WINAPI CommandLineToArgvW(LPCWSTR,int*);
    void WINAPI DragAcceptFiles(HWND,BOOL);
    void WINAPI DragFinish(HDROP);
    UINT WINAPI DragQueryFileA(HDROP,UINT,LPSTR,UINT);
    UINT WINAPI DragQueryFileW(HDROP,UINT,LPWSTR,UINT);
    BOOL WINAPI DragQueryPoint(HDROP,LPPOINT);
    HICON WINAPI DuplicateIcon(HINSTANCE,HICON);
    HICON WINAPI ExtractAssociatedIconA(HINSTANCE,LPCSTR,PWORD);
    HICON WINAPI ExtractAssociatedIconW(HINSTANCE,LPCWSTR,PWORD);
    HICON WINAPI ExtractIconA(HINSTANCE,LPCSTR,UINT);
    HICON WINAPI ExtractIconW(HINSTANCE,LPCWSTR,UINT);
    UINT WINAPI ExtractIconExA(LPCSTR,int,HICON*,HICON*,UINT);
    UINT WINAPI ExtractIconExW(LPCWSTR,int,HICON*,HICON*,UINT);
    HINSTANCE WINAPI FindExecutableA(LPCSTR,LPCSTR,LPSTR);
    HINSTANCE WINAPI FindExecutableW(LPCWSTR,LPCWSTR,LPWSTR);
    UINT WINAPI SHAppBarMessage(DWORD,PAPPBARDATA);
    BOOL WINAPI Shell_NotifyIconA(DWORD,PNOTIFYICONDATAA);
    BOOL WINAPI Shell_NotifyIconW(DWORD,PNOTIFYICONDATAW);
    int WINAPI ShellAboutA(HWND,LPCSTR,LPCSTR,HICON);
    int WINAPI ShellAboutW(HWND,LPCWSTR,LPCWSTR,HICON);
    HINSTANCE WINAPI ShellExecuteA(HWND,LPCSTR,LPCSTR,LPCSTR,LPCSTR,INT);
    HINSTANCE WINAPI ShellExecuteW(HWND,LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR,INT);
    BOOL WINAPI ShellExecuteExA(LPSHELLEXECUTEINFOA);
    BOOL WINAPI ShellExecuteExW(LPSHELLEXECUTEINFOW);
    int WINAPI SHFileOperationA(LPSHFILEOPSTRUCTA);
    int WINAPI SHFileOperationW(LPSHFILEOPSTRUCTW);
    void WINAPI SHFreeNameMappings(HANDLE);
    DWORD WINAPI SHGetFileInfoA(LPCSTR,DWORD,SHFILEINFOA*,UINT,UINT);
    DWORD WINAPI SHGetFileInfoW(LPCWSTR,DWORD,SHFILEINFOW*,UINT,UINT);
    HRESULT WINAPI SHQueryRecycleBinA(LPCSTR, LPSHQUERYRBINFO);
    HRESULT WINAPI SHQueryRecycleBinW(LPCWSTR, LPSHQUERYRBINFO);
    HRESULT WINAPI SHEmptyRecycleBinA(HWND,LPCSTR,DWORD);
    HRESULT WINAPI SHEmptyRecycleBinW(HWND,LPCWSTR,DWORD);
    
    
    #ifdef UNICODE
    typedef NOTIFYICONDATAW NOTIFYICONDATA,*PNOTIFYICONDATA;
    typedef SHELLEXECUTEINFOW SHELLEXECUTEINFO,*LPSHELLEXECUTEINFO;
    typedef SHFILEOPSTRUCTW SHFILEOPSTRUCT,*LPSHFILEOPSTRUCT;
    typedef SHFILEINFOW SHFILEINFO;
    #define DragQueryFile DragQueryFileW
    #define ExtractAssociatedIcon ExtractAssociatedIconW
    #define ExtractIcon ExtractIconW
    #define ExtractIconEx ExtractIconExW
    #define FindExecutable FindExecutableW
    #define Shell_NotifyIcon Shell_NotifyIconW
    #define ShellAbout ShellAboutW
    #define ShellExecute ShellExecuteW
    #define ShellExecuteEx ShellExecuteExW
    #define SHFileOperation SHFileOperationW
    #define SHGetFileInfo SHGetFileInfoW
    #define SHQueryRecycleBin SHQueryRecycleBinW
    #define SHEmptyRecycleBin SHEmptyRecycleBinW
    
    
    #else
    typedef NOTIFYICONDATAA NOTIFYICONDATA,*PNOTIFYICONDATA;
    typedef SHELLEXECUTEINFOA SHELLEXECUTEINFO,*LPSHELLEXECUTEINFO;
    typedef SHFILEOPSTRUCTA SHFILEOPSTRUCT,*LPSHFILEOPSTRUCT;
    typedef SHFILEINFOA SHFILEINFO;
    #define DragQueryFile DragQueryFileA
    #define ExtractAssociatedIcon ExtractAssociatedIconA
    #define ExtractIcon ExtractIconA
    #define ExtractIconEx ExtractIconExA
    #define FindExecutable FindExecutableA
    #define Shell_NotifyIcon Shell_NotifyIconA
    #define ShellAbout ShellAboutA
    #define ShellExecute ShellExecuteA
    #define ShellExecuteEx ShellExecuteExA
    #define SHFileOperation SHFileOperationA
    #define SHGetFileInfo SHGetFileInfoA
    #define SHQueryRecycleBin SHQueryRecycleBinA
    #define SHEmptyRecycleBin SHEmptyRecycleBinA
    #endif
    #ifdef __cplusplus
    }
    #endif
    #endif


  2. #2
    ☆Dying Dawn☆ Bombillo is offline
    MemberRank
    Jan 2012 Join Date
    ValhallaLocation
    977Posts

    Re: [SNIPPET] Make the 'purchase GC' button take you to a webpage

    useless things...
    Last edited by Bombillo; 22-07-16 at 01:58 AM. Reason: No more share

  3. #3
    Your average Dutch guy Laenoar is offline
    MemberRank
    Apr 2013 Join Date
    The NetherlandsLocation
    384Posts

    Re: [SNIPPET] Make the 'purchase GC' button take you to a webpage

    Quote Originally Posted by Bombillo View Post
    too much proccess, just make the function like this
    Mine is easier. You forgot that you also need to add
    Code:
    gfxMovie.RegisterEventHandler("eventStorePurchaseGPRequest", MAKE_CALLBACK(eventStorePurchaseGPRequest));
    and
    Code:
    void eventStorePurchaseGPRequest(r3dScaleformMovie* pMovie, const Scaleform::GFx::Value* args, unsigned argCount);
    for it to work.

    The shellapi.h is required for older sources, like the one I'm using, so that is optional.

    In newer sources, all you will have to add is
    Code:
    ShellExecute(NULL, "open", "https://www.account.daysafterdead.pw/donate.php?ref=marketplace", NULL, NULL, SW_SHOWNORMAL);
    and it will work perfectly.

    In your case, you would have to add
    Code:
    r3d_assert(argCount == 0);
        char url[256];
    
    
        // HyperLink to explorer program
        sprintf(url, "http://afterlifemmo.com/buy/login.php");
        ShellExecute(NULL, "open", url, "", NULL, SW_SHOW);
    Guess which is easier ;)



Advertisement