Mysidia Adoptables Support Forum  

Home Community Mys-Script Creative Off-Topic
Go Back   Mysidia Adoptables Support Forum > Mysidia Adoptables > Addons and Modifications > Mys v1.1.x Mods

Notices

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #1  
Old 12-24-2009, 10:56 AM
bokkun bokkun is offline
Premium Member
 
Join Date: Dec 2009
Posts: 8
Gender: Male
Credits: 4,693
bokkun
Default Abandon system

Hey, I'm bokkun and...
let's me skip the introduction for now and give what you came for.
In dragon cave you can abandon your dragons and have someone else adopt it, instead of killing them, It looked me interesting to have such a system to save those poor virtual lifes ;)
I am not a great php programmer however, I tried my best, and accept critic.
The script is supposed to remove the kill ability, but it's possible to simply have both.

first of all, we need a new table in the database to save our abandoned adoptables:
Code:
CREATE TABLE IF NOT EXISTS `adopts_abandoned` (
  `aid` int(11) NOT NULL auto_increment,
  `type` varchar(40) default NULL,
  `name` varchar(40) default NULL,
  `owner` varchar(40) default NULL,
  `currentlevel` int(11) default NULL,
  `totalclicks` int(11) default NULL,
  `code` int(11) default NULL,
  `imageurl` varchar(120) default NULL,
  `usealternates` varchar(10) default NULL,
  `tradestatus` varchar(15) default NULL,
  `isfrozen` varchar(10) default NULL,
  `date` varchar(30) default NULL,
  PRIMARY KEY  (`aid`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=9 ;
It's pretty much a copy of the owned table, but with an additional field date

now, put the creature in there, open myadopt.php
and look for $act == "kill"
scroll a bit down till you find
PHP Code:
$aid=@mysql_result($result,$i,"aid"); //The adoptable's ID
$currentlevel=@mysql_result($result,$i,"currentlevel");
$type=@mysql_result($result,$i,"type");
$name=@mysql_result($result,$i,"name");
$totalclicks=@mysql_result($result,$i,"totalclicks");
$isfrozen=@mysql_result($result,$i,"isfrozen"); 
since we need way more data,replace it with:
PHP Code:
$aid=@mysql_result($result,$i,"aid"); //The adoptable's ID
$currentlevel=@mysql_result($result,$i,"currentlevel");
$type=@mysql_result($result,$i,"type");
$owner=@mysql_result($result,$i,"owner");
$name=@mysql_result($result,$i,"name");
$totalclicks=@mysql_result($result,$i,"totalclicks");
$isfrozen=@mysql_result($result,$i,"isfrozen");
$code=@mysql_result($result,$i,"code");
$usealternates=@mysql_result($result,$i,"usealternates");
$tradestatus=@mysql_result($result,$i,"tradestatus");
$date=time('U'); 
scroll down till you find $query = "DELETE FROM ".$prefix."owned_adoptables WHERE aid='$id' and owner='$loggedinname'";
this is where it gets removed, but we don't want that, replace with
PHP Code:
mysql_query("INSERT INTO ".$prefix."abandoned VALUES ('$aid', '$type', '$name','$owner', '$currentlevel', '$totalclicks', '$code', '', '$usealternates', '$tradestatus', '$isfrozen', '$date')");
mysql_query("DELETE FROM ".$prefix."owned_adoptables WHERE aid='$id' and owner='$loggedinname'"); 
change the text a bit to fit the abandon process(as well in myadopts.php as in lang.php)
and that's it... ow wait where can we find our creatures? and don't forget you have to be able to adopt them
There are 2 attachments included, abandon.php(is like adopt.php but for the abandoned pets) and doadoptab.php(like doadopt.php to adopt our abandoned friend.)

abandon.php uses
$article_title = $ashowingtitle;
$article_content = $ashowing;
don't forget to put that in your lang.php,
and neither should you forget to add the link

another think in abandon.php is that it checks if the creature has been there for more than 2 weeks, if so it gets removed, forever!
to change that look for $decay=time() - 14 * 24 * 60 * 60;
and change 14 * 24 * 60 * 60 to fit your needs(14 is more or less how many days it are)
to remove the auto-delete thing, you can remove the
if($date < $decay){ //check if the creature is too the abandoned database
//yes it is, time to remove it
$removed="yes";
mysql_query("DELETE FROM ".$prefix."abandoned WHERE aid='$aid' and name='$name'");
}


I forgot to say abandon uses an edited function script
simply add this at the end of function.php, else you can't see the pet image
PHP Code:
function getabandonedimage($id){

// This function determines which image we should use for a given adoptable...

include("config.php"); // This is so we can use the table prefix

$image "";

// First we select the adoptable from the database and get some basic information...

$query "SELECT * FROM ".$prefix."abandoned WHERE aid='$id'";
$result mysql_query($query);
$num mysql_numrows($result);

//Loop out code
$i=0;
while (
$i 1) {

$type=@mysql_result($result,$i,"type"); 
$currentlevel=@mysql_result($result,$i,"currentlevel"); 
$imageurl=@mysql_result($result,$i,"imageurl");
$usealternates=@mysql_result($result,$i,"usealternates");


$i++;
}

if(
$imageurl != ""){

// If we are using a custom image for this adoptable, use that
$image $imageurl;

}
else{

// We have to dig this up ourselves...
// Check if we are using an egg image or a level image...

    
if($currentlevel == or $currentlevel == "0"){

    
// Let's see what the egg image is...    

    
$query "SELECT * FROM ".$prefix."adoptables WHERE type='$type'";
    
$result mysql_query($query);
    
$num mysql_numrows($result);

    
//Loop out code
    
$i=0;
    while (
$i 1) {

    
$eggimage=@mysql_result($result,$i,"eggimage"); 


    
$i++;
    }

    
$image $eggimage// Set the image URL equal to the egg image...

    
}
    else{

    
// We have to find out what level we are using...
    // Then we can choose the appropriate image for what we are using...

        
$query "SELECT * FROM ".$prefix."levels WHERE adoptiename='$type' and thisislevel='$currentlevel'";
        
$result mysql_query($query);
        
$num mysql_numrows($result);

        
//Loop out code
        
$i=0;
        while (
$i 1) {

        
$primaryimage=@mysql_result($result,$i,"primaryimage"); 
        
$alternateimage=@mysql_result($result,$i,"alternateimage");


        
$i++;
        }

        
// If alternate images are enabled and an alternate image exists, use it

        
if($usealternates == "yes" and $alternateimage != ""){

        
$image $alternateimage// Use the alternate image

        
}
        else{

        
$image $primaryimage// Set the image equal to the primary image for the level

        
}
    


    }

}

if(
$type == "" or $image == ""){
// We did not settle on an image, so we show an error image...

$image "http://".$domain."".$scriptpath."/templates/icons/delete.gif";

}

return 
$image;

}

function 
canadoptab($aid$cond$promocode){

include(
"config.php");

// This function determines if a user can adopt a specific adoptable...

$canadopt "yes"// The default status is that we CAN adopt, unless proven false...

// The first thing we check is that we are logged in

$loginstatus logincheck();
$isloggedin $loginstatus[loginstatus];
$loggedinname $loginstatus[username];

if(
$isloggedin != "yes" and $cond != "showing"){
$canadopt "no";
}

// Now we check if our usergroup has permission to adopt the adoptable...

$group getgroup();
$dbcanadpt cando($group"canadopt");

if(
$dbcanadpt != "yes" and $cond != "showing"){
$canadopt "no";
}
return 
$canadopt;


Update: the abandon.php and doadoptab.php script are reuploaded, they're edited to work correctly with the function above

This script is not compatible with a gender mod
if you use one a few additions will have to be made:
find in abandon.php
PHP Code:
$aid=@mysql_result($result,$i,"aid"); //The adoptable's ID
$currentlevel=@mysql_result($result,$i,"currentlevel");
$type=@mysql_result($result,$i,"type");
$owner=@mysql_result($result,$i,"owner");
$name=@mysql_result($result,$i,"name");
$totalclicks=@mysql_result($result,$i,"totalclicks");
$isfrozen=@mysql_result($result,$i,"isfrozen");
$code=@mysql_result($result,$i,"code");
$usealternates=@mysql_result($result,$i,"usealternates");
$tradestatus=@mysql_result($result,$i,"tradestatus");
$date=date('Y-m-d');
$eggimage getabandonedimage($aid); 
add at the end
$gender=@mysql_result($result,$i,"gender");

to show the gender:
go a little down till you see $article_content = $article_content."<br><img src='".$eggimage."' border='0'><br>
add between that and <form name='form1' method='get' action='doadoptab.php'> this:
<b>Gender: </b>".$gender."<br>
That shows the gender to people who will get there abandoned pet
next (more importantly) go to adoptab.php
find
mysql_query("INSERT INTO ".$prefix."owned_adoptables VALUES ('', '$type', '$name','$loggedinname','$currentlevel','$totalcli cks', '$code', '','$usealternates','$tradestatus','$isfrozen')");
replace with
mysql_query("INSERT INTO ".$prefix."owned_adoptables VALUES ('', '$type', '$name','$loggedinname','$currentlevel','$totalcli cks', '$code', '','$usealternates','$tradestatus','$isfrozen','$g ender')");

find a bit above $eggimage=getabandonedimage($aid);
and add again
$gender=@mysql_result($result,$i,"gender");
that should do it for that file.
but we aren't done

in the code above(in file myadopts.php) you'll see
$date=time('U');
add $gender=@mysql_result($result,$i,"gender");
then find
INSERT INTO ".$prefix."abandoned VALUES ('$aid', '$type', '$name','$owner', '$currentlevel', '$totalclicks', '$code', '', '$usealternates', '$tradestatus', '$isfrozen', '$date')");
replace with
mysql_query("INSERT INTO ".$prefix."abandoned VALUES ('$aid', '$type', '$name','$owner', '$currentlevel', '$totalclicks', '$code', '', '$usealternates', '$tradestatus', '$isfrozen', '$date','$gender')");

well that looks good, but it won't work if you don't add in the table adopts_abandoned a new field gender (with the same options as the gender field from the owned_adoptables)
Attached Files
File Type: php abandon.php (7.7 KB, 4 views)
File Type: php doadoptab.php (7.7 KB, 2 views)
Reply With Quote
 


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Mys v1.3.3 Personality System Hwona Mys v1.3.x Mods 15 12-18-2016 10:13 PM
Trade System Kyttias Questions and Supports 4 05-29-2016 01:29 AM
Wait 4 hours to abandon? SilverDragonTears Questions and Supports 2 10-30-2011 04:11 PM
Trade System? sensacion Questions and Supports 5 08-20-2010 12:36 PM
Trade System? SieghartZeke Questions and Supports 1 12-28-2009 08:06 AM


All times are GMT -5. The time now is 08:31 AM.

Currently Active Users: 712 (0 members and 712 guests)
Threads: 4,081, Posts: 32,031, Members: 2,016
Welcome to our newest members, jolob.
BETA





What's New?

What's Hot?

What's Popular?


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
vBCommerce I v2.0.0 Gold ©2010, PixelFX Studios
vBCredits I v2.0.0 Gold ©2010, PixelFX Studios
Emoticons by darkmoon3636