vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vBulletin 3.5 Add-ons (https://vborg.vbsupport.ru/forumdisplay.php?f=113)
-   -   vBookie for vBulletin 3.5 (https://vborg.vbsupport.ru/showthread.php?t=94128)

Railen 03-14-2006 04:44 PM

Quote:

Originally Posted by BeaLzeBuB
when i change vBookie settings to "yes" under the usergroup permissions, i cant save these. when i rechechk, they're shown as "no".

I can't believe this question. I answered it in the post IMMEDIATELY before yours.

Adam21 03-16-2006 01:12 AM

It would be great if someone could figure this out...

Can the winnings or losses from each event posted be deducted or added acordingly to the event outome,from the member's vCash who posted that event.anyone???;)

psybernaut 03-16-2006 02:19 AM

Quote:

Originally Posted by geo1
It would be great if someone could figure this out...

Can the winnings or losses from each event posted be deducted or added acordingly to the event outome,from the member's vCash who posted that event.anyone???;)

I modified vbookie to do this with vbBux, it should be fairly easy to do the same thing for vCash. I haven't posted the code because it's a bit of a hack and I was hoping Andreas would add it as a feature for the next update. But he hasn't posted here for ages... does anyone know if he's still supporting this mod?

Anyway, if you're happy to modify php files I can post the code for you.

Adam21 03-16-2006 03:22 AM

Quote:

Originally Posted by psybernaut
I modified vbookie to do this with vbBux, it should be fairly easy to do the same thing for vCash. I haven't posted the code because it's a bit of a hack and I was hoping Andreas would add it as a feature for the next update. But he hasn't posted here for ages... does anyone know if he's still supporting this mod?

Anyway, if you're happy to modify php files I can post the code for you.


great!please do share that piece of of code.thanks alot!:banana:

EasyTarget 03-16-2006 03:29 AM

Quote:

Originally Posted by psybernaut
does anyone know if he's still supporting this mod?

according the the information at the top of the page this hack isn't supported, so I'd guess that's a no.

psybernaut 03-16-2006 07:09 AM

Here's the mod to make money bet on vbookie events go to the bookie, and to have any winnings paid out from the bookies money. If the bookie can't afford to pay the winnings, their cash is set to zero. If you're using vbbux, money will be taken from the bank if possible.

Backup your files before making these changes! I've only tested this on my own site (3.5.4), so proceed with caution!

First, open includes/functions_vbookie.php and find:
Code:

?>
Above, add:
Code:

// psybernaut mod
function vbookie_take_bookie_cash($userid, $amount)
{
        global $vbulletin;

        $bookie = $vbulletin->db->query_first("SELECT * FROM " . TABLE_PREFIX . "user WHERE userid=$userid");

        switch ($vbulletin->options['vbookiecash'])
        {
                case 'vcash':
                        if($amount > $bookie['vbookie_cash'])
                        {
                                $vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET vbookie_cash=0 WHERE userid=$userid");
                        }
                        else
                        {
                                $vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET vbookie_cash=vbookie_cash-$amount WHERE userid=$userid");
                        }
                        break;
                case 'ucash':
                        if($amount > $bookie['ucash'])
                        {
                                $vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET ucash=0 WHERE userid=$userid");
                        }
                        else
                        {
                                $vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET ucash=ucash-$amount WHERE userid=$userid");
                        }
                        break;
                case 'ebux':
                        if($amount > $bookie['ebux'])
                        {
                                $vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET ebux=0 WHERE userid=$userid");
                        }
                        else
                        {
                                $vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET ebux=ebux-$amount WHERE userid=$userid");
                        }
                        break;
                case 'custom':
                        ($hook = vBulletinHook::fetch_hook('vbookie_take_bookie_cash')) ? eval($hook) : false;
        }
}

Next, open vbookie.php and find:
Code:

                                // actually pay the money ;)
                                vbookie_give_user_cash($bet['userid'], $amount_to_pay);

Below, add:
Code:

                                // psybernaut's mod
                                vbookie_take_bookie_cash($threadinfo['postuserid'], $amount_to_pay);

Then find:
Code:

        vbookie_take_user_cash($total_stake);
Below, add:
Code:

        // psybernaut's mod
        vbookie_give_user_cash($threadinfo['postuserid'], $total_stake);

That's it! ...unless you're using vbBux (by setting vbookie to a custom point system and using CMX's hooks), then you need a couple more mods...

Open includes/xml/hooks_bookiehack.xml and find:
Code:

                <hook>vbookie_take_user_cash</hook>
Below, add:
Code:

                <hook>vbookie_take_bookie_cash</hook>
Last of all, you need to add a new plugin to hook into vbBux... Go to Plugin System->Add New Plugin and add a plugin with the following details:

Product: vBulletin
Hook Location: vbookie_take_bookie_cash
Title: vBookie With vbPlaza - Take Bookie Cash
Plugin PHP Code:
Code:

// take the bookies money
$bookie = $vbulletin->db->query_first("SELECT * FROM " . TABLE_PREFIX . "user WHERE userid=$userid");
if($amount > $bookie['vbbux'])
{
        $amount = $amount - $bookie['vbbux'];
        $vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET vbbux=0 WHERE userid=$userid");
        if($amount > $bookie['vbbank'])
        {
                $vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET vbbank=0 WHERE userid=$userid");
        }
        else
        {
                $vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET vbbank=vbbank-$amount WHERE userid=$userid");

        }
}
else
{
        $vbulletin->db->query_write("UPDATE " . TABLE_PREFIX . "user SET vbbux=vbbux-$amount WHERE userid=$userid");
}

That should do the trick! Well, it works for me at least... YMMV ;)

I've made another fix for timezones that are not a round integer (we live in a +9.5 timezone and it caused some issues that needed fixing). I'd be interested in putting out a new release with this fixe in it and the above mod included in a tidier form (eg. admin option to turn it on/off etc). Can anyone point me to some info on how to go about taking over responsibility for this mod, that's assuming Andreas is willing to hand it over of course... I'm not looking to step on toes :)

EDIT: Updated the vbbux hook to deduct money from the bookie's bank account if they don't have enough cash on hand.

chairman miaow 03-16-2006 10:32 AM

Excellent....thanks for this.....when (if) you take this over from Andreas , could you add in a maximum bet feature ?

Catsgot9 03-16-2006 12:07 PM

will that bookie thing work with vcash too, psybernaut?
I do not know how to install vbux/ucash.. but my vbookie seems to be working with vcash.
I would like to have a promotion, see which bookie can make the most virtual dollars

CatsGot9

Adam21 03-16-2006 12:10 PM

*edited

Catsgot9 03-16-2006 12:33 PM

I deleted a thread that had a bet in it.. now the bet stays there inactive. How can I remove this from vbookie?

CatsGot9


All times are GMT. The time now is 12:58 PM.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.

X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.03026 seconds
  • Memory Usage 1,767KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (9)bbcode_code_printable
  • (4)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (5)pagenav_pagelinkrel
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (10)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • printthread_start
  • pagenav_page
  • pagenav_complete
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete