Thread: Breeding
View Single Post
  #13  
Old 10-26-2009, 09:47 AM
Arianna's Avatar
Arianna Arianna is offline
Dev Staff
 
Join Date: Sep 2009
Posts: 334
Gender: Female
Credits: 21,558
Arianna will become famous soon enough
Default RE: Breeding

Something amazing - my dad (he knows C and C++ and stuff like that) helped me and I managed to have the whole code working!
PHP Code:
<?php

// Basic Rusnak PHP Adoptables Script configurations
include("inc/functions.php");
include(
"inc/config.php");

$themeurl grabanysetting("themeurl");
$links getlinks();

$ads getads("any");

$pagecontent getsitecontent("index");
//$article_title = $pagecontent[title];
//$article_content = $pagecontent[content];
$article_content nl2br($article_content);

$browsertitle grabanysetting("browsertitle");
$sitename grabanysetting("sitename");
$slogan grabanysetting("slogan");

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

// End of basic configurations

$article_content $article_title."Breeding System"
$article_content $article_content."<p>Adoptable breeding systems sure aren't easy to make!</p>"

$femaleid $_POST['female'];
$maleid $_POST['male'];
$breed $_POST['breed'];
// this two variables will get the female and male ID's from the selection form and the answer if the user has selected the adoptables or not.

// First let's create a page so the users can choose the two adoptables that they want to breed

if ($isloggedin == "yes"){ 
    
// we have to put that in the start of the breeding system, so users that are not logged in cannot see the selection forms

    
if ($breed != 'yes'){
        
// if the anser if the user has selected the adoptables or not, is different than YES, we have to show the options so the user can select them

        // This will start a selection form to select the females
        
$article_content $article_content."<p>Select the Two adoptables you want to Breed:</p><p><form method='post'><select name = 'female'>"

        
//This will select all the female adoptables the user has
        
$result mysql_query("SELECT * FROM ".$prefix."owned_adoptables WHERE owner = '$loggedinname' AND gender = 'Female'");
        
$num mysql_num_rows($result);

        
// Loop Out code < this will loop so you select all the rows and not just one
        
$i 0;
        while (
$i $num){
            
$aid mysql_result($result,$i,'aid');
            
$type mysql_result($result,$i,'type');
            
$name mysql_result($result,$i,'name');

            
$article_content $article_content."<option value='".$aid."'>".$name." (".$type.")</option>";
            
//this will display something like that: cute kitty (cat), the name (the type); for each adptable (female) the user has

            
$i++;
        }

        
$article_content $article_content."</select><select name='male'>"//now let's do the same for the males

        
$result2 mysql_query("SELECT * FROM ".$prefix."owned_adoptables WHERE owner = '$loggedinname' AND gender = 'Male'");
        
$num2 mysql_num_rows($result2);

        
// Loop Out code
        
$i2 0;
        while (
$i2 $num){
            
$aid mysql_result($result2,$i2,'aid');
            
$type mysql_result($result2,$i2,'type');
            
$name mysql_result($result2,$i2,'name');

            
$article_content $article_content."<option value='".$aid."'>".$name." (".$type.")</option>";

            
$i2++;
        }

        
$article_content $article_content."</select><input type='hidden' name='breed' value='yes'><input type='submit' value='Breed It'></form>";

        
// ok now the user has two selection forms to those a female and a male adoptable and
                //  when they click Breed It, it will be posted to the variables $_POST['female'] and $_POST['male'], which will be two aid (adoptables ids), 
                //  and with that ID we can select the information that we need from the database, and breed them

        // the hidden input will give us an answer to our question, the user has selected it? and it'll be 'yes'

    
// this is the end of if($breed != 'yes'), so now we have to put an ELSE statment, that means that the answer IS yes, and we can proceed with the breeding

    
else {
        
// ok, if the user gets here, it means that we have the male and female ID, and with it we can select the informations from the database.
        // here you can estabilish what you want.. the adoptables have to be which level to breed? the adoptables have to be the same type? 
        // I took out the incompatible part, it can be added back in if needed
        // first let's get the information we need

        
$result mysql_query("SELECT * FROM ".$prefix."owned_adoptables WHERE aid = '$femaleid'");
        
// the result should be just one row, so we don't need a loop

        
$female_type mysql_result($result,0,'type'); 
        
// 0 means that we are selecting the very first row, in this case, the only one
        
$female_name mysql_result($result,0,'name');
        
$female_level mysql_result($result,0,'currentlevel');


        
$result2 mysql_query("SELECT * FROM ".$prefix."owned_adoptables WHERE aid = '$maleid'");
        
// the result should be just one row, so we don't need a loop

        
$male_type mysql_result($result2,0,'type'); 
        
// 0 means that we are selecting the very first row, in this case, the only one
        
$male_name mysql_result($result2,0,'name');
        
$male_level mysql_result($result2,0,'currentlevel');

        
// now we have all we need. let's start the security system, to guarantee that the user has the requirements
        
        
if ($male_level AND $female_level 2){
            
//We choose the type!
            
$temptype rand(01);
            if(
$temptype == "0") {
                
$type $male_type;
                unset(
$temptype);
            } else {
                
$type $female_type;
                unset(
$temptype);
            }
            
$article_content $article_content."<p>Your adoptables are breeding.</p>";
        } else { 
//this is if they can't breed
            
$article_content $article_content."Sorry, one of your adoptables don't have the minimum level to breed. Keep feeding them so they can grow.";    
        } 

        if (
$type != "0"){
            
$article_content $article_content."<p>Result: <b>Bred Succesfully</b></p><p>Your new egg is being transferred to you right now. Yay!</p>";

            
// now let's insert the new egg at owned_adoptables

            // we're choosing a gender
            
$gender_rand rand(0,1);

            if(
$gender_rand 0){
                
$new_name $male_name." & ".$female_name."'s Son";
                
$gender 'male';
                unset(
$gender_rand);
            }
            else{
                
$new_name $male_name." & ".$female_name."'s Daughter";
                
$gender 'female';
                unset(
$gender_rand);
            }

            
// now we're choosing the code
            
$code rand(120000);

            
$result3 mysql_query("SELECT * FROM ".$prefix."adoptables WHERE type='$male_type'");
            
$aid mysql_result($result3,0,"id"); //The adoptable's ID
            
$eggimage mysql_result($result3,0,"eggimage");

            
$alts getaltstatus($aid00);

            
mysql_query("INSERT INTO ".$prefix."owned_adoptables VALUES ('', '$type', '$new_name','$loggedinname','0','0', '$code', '','$alts','notfortrade','no','$gender')");

            
$article_content $article_content."<p><img src='".$eggimage."'><br /><a href='myadopts.php'>Manage ".$new_name." now!</a> You can change its name to your liking.</p>";

        }

        
//uh, this is just here because we need an else, right?
        
else {
            break;
        }

    } 
//this bracket ends the else where we find the male/female id's
}// this is the end of if($isloggedin == "yes")

else { //this is the else of if($isloggedin == "yes")

    
$article_content $article_content."You are not logged in. Please log in to breed.";

}

// **********************************************************************
// Begin Template Definition
// **********************************************************************

//Define our current theme
$file $themeurl;

// Do the template changes and echo the ready template
$template file_get_contents($file);

$template replace(':ARTICLETITLE:',$article_title,$template);
$template replace(':ARTICLECONTENT:',$article_content,$template);
$template replace(':ARTICLEDATE:',$article_date,$template);

$template replace(':BROWSERTITLE:',$browsertitle,$template);
$template replace(':SITENAME:',$sitename,$template);

//Define our links
$template replace(':LINKSBAR:',$links,$template);

//Get the content for the side bar...

$sidebar getsidebar();
$template replace(':SIDEFEED:',$sidebar,$template);

//Get the ad content...
$template replace(':ADS:',$ads,$template);

//Get the slogan info
$template replace(':SLOGAN:',$slogan,$template);

echo 
$template;

// **********************************************************************
// End Template Definition
// **********************************************************************
?>
The only problem is that it doesn't actually create the adoptable. That's a problem, but we're making progress. :D
Reply With Quote