Mysidia Adoptables Support Forum  

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

Notices

Reply
 
Thread Tools Display Modes
  #11  
Old 07-08-2014, 12:52 AM
Kyttias's Avatar
Kyttias Kyttias is offline
Premium Member
 
Join Date: Jan 2014
Posts: 857
Gender: Unknown/Other
Credits: 111,664
Kyttias is on a distinguished road
Default

Nah, I can't. I'm working from my localhost/wamp setup only for now, and it's not online-online. =/ I could get it online from an IP address, but I'd have to do some port forwarding with the router but I figured since I'm moving at the end of the month that I wasn't going to bother until I was settled in at my new place.
__________________
Please do not contact me directly outside of Mysidia.
I also cannot troubleshoot code more than two years old - I legit don't remember it.
Reply With Quote
  #12  
Old 07-09-2014, 01:06 PM
Kyttias's Avatar
Kyttias Kyttias is offline
Premium Member
 
Join Date: Jan 2014
Posts: 857
Gender: Unknown/Other
Credits: 111,664
Kyttias is on a distinguished road
Default

(I think we should move the discussion here, in case it's helpful to someone, rather than having it on our pages?)

Alright, before click: x
After click: x

I followed your instructions exactly? And your instructions very literally snuggled up the personality to error message right below it, already there by default. When your page is reloaded, it shows a profile. But by default on 1.3.4, at least, it just shows an error. I assume you just designed over the error? I can do that no problem. There -isn't- a profile page by default at that link at all, though, so I assume you made all of it yourself.

However, there are only two references to 'frozen' pages in my script on that page and none of them look like what you have in the step after that. It's just "elseif($this->adopt->isFrozen() == "yes") throw new LevelupException("frozen");" so I couldn't continue your tutorial from there. Line numbers didn't help me at all because none of those matched, and there is no "$document->add($summary);" going on anywhere in that file. Nor any reference to 'document' at all.

1.3.4 levelup.php (with the tiny edit I managed to do):
PHP Code:
<?php

use Resource\Native\Integer;
use 
Resource\Collection\ArrayList;
use 
Resource\Utility\Curl;

class 
LevelupController extends AppController{

    const 
PARAM "aid";
    private 
$adopt;
    private 
$settings;

    public function 
__construct(){
        
parent::__construct();
        
$this->settings = new LevelSetting;
        
$mysidia Registry::get("mysidia");

        if(
$mysidia->input->action() == "click" or $mysidia->input->action() == "siggy"$this->adopt = new OwnedAdoptable($mysidia->input->get("aid"));
        if(
$mysidia->user instanceof Member){
            
$status $mysidia->user->getstatus();   
            if(
$status->canlevel == "no") throw new InvalidActionException("banned");
        }    
    }
    
    public function 
index(){
        throw new 
InvalidActionException("global_action");
    }
    
    public function 
click(){
        
$mysidia Registry::get("mysidia");
        
$date = new DateTime;
        
$ip secure($_SERVER['REMOTE_ADDR']);
        
        if(
$this->settings->system != "enabled") throw new NoPermissionException("disabled");
        elseif(
$this->adopt->hasVoter($mysidia->user$date)){
            
$message "<div id='personality'>This {$this->adopt->size}-sized, {$this->adopt->nature} novu likes {$this->adopt->likes} and dislikes {$this->adopt->dislikes}.</div>";
            
$message $message .= (($mysidia->user instanceof Member)?$mysidia->lang->already_leveled_member:$mysidia->lang->already_leveled_guest); 
            throw new 
LevelupException($message);        
        }
        elseif(
$this->adopt->isFrozen() == "yes") throw new LevelupException("frozen");
        elseif(
$mysidia->user->getVotes() > $this->settings->number) throw new LevelupException("number");
        elseif(
$this->settings->owner == "disabled" and $this->adopt->getOwner() == $mysidia->user->username){
             throw new 
LevelupException("owner");               
        }
        else{
            
$newClicks $this->adopt->getTotalClicks() + 1;
            
$this->adopt->setTotalClicks($newClicks"update");
            
$mysidia->db->insert("vote_voters", array("void" => NULL"date" => $date->format('Y-m-d'), "username" => $mysidia->user->username"ip" => $ip"adoptableid" => $mysidia->input->get("aid")));         
            
            if(
$this->adopt->hasNextLevel()){
                
$nextLevel $this->adopt->getNextLevel();
                
$requiredClicks $nextLevel->getRequiredClicks();
                if(
$requiredClicks and $newClicks >= $requiredClicks$this->adopt->setCurrentLevel($nextLevel->getLevel(), "update");
            }
            
            
$reward $mysidia->user->clickreward($this->settings->reward);
            
$mysidia->user->changecash($reward);            
            
$this->setField("adopt"$this->adopt);
            
$this->setField("reward", new Integer($reward));            
        }
    }

    public function 
siggy(){
        
$mysidia Registry::get("mysidia");
        
// The adoptable is available, let's collect its info
        
$usingimage "no";
        
$image $this->adopt->getImage(); 
      
        
$usegd $mysidia->settings->gdimages;
        
$imageinfo = @getimagesize($image);
        
$imagemime $imageinfo["mime"]; // Mime type of the image file, should be a .gif file...

        
if(function_exists('imagegif') and $usegd == "yes" and $imagemime == "image/gif"){
            
$usingimage "yes"//Turn the template system off
            
$type $this->adopt->getType();
            list(
$width$height$type$attr) = getimagesize($image); // The size of the original adoptable image

            // Lets create the new target image, with a size big enough for the text for the adoptable
            
$newheight $height 72;
            
$newwidth = ($newwidth 250)?250:$width;
            
$img_temp imagecreatetruecolor($newwidth$newheight); 
            
$alphablending true;  
         
            
// Lets create the image and save its transparency  
            
$img_old = @imagecreatefromgif($image);  
            
imagealphablending($img_oldtrue);  
            
imagesavealpha($img_oldtrue);
   
            
// Lets copy the old image into the new image with  
            
ImageCopyResampled($img_temp$img_old0000$width$height$width$height);    
            
$textheight $width 2;
            
$image $img_temp;
            
$bgi imagecreatetruecolor($newwidth$newheight);
            
$color imagecolorallocate($bgi515151);
         
            
// Build text for siggy
            
$str1 "Name: ".$this->adopt->getName();
            
$str2 "Owner: ".$this->adopt->getOwner();
            
$str3 "Click Here to Feed Me!";
            
$str4 "More Adopts at:";
            
$str5 "www.".constant("DOMAIN");

            
// Renger Image
            
imagestring ($image120$textheight,  $str1$color);
            
imagestring ($image120$textheight 13,  $str2$color);
            
imagestring ($image120$textheight 26,  $str3$color);
            
imagestring ($image120$textheight 42,  $str4$color);
            
imagestring ($image120$textheight 55,  $str5$color);
            
$background imagecolorallocate($image000);  
            
ImageColorTransparent($image$background);  
 
            
// At the very last, let's clean up temporary files
            
header("Content-Type: image/GIF");
            
ImageGif ($image);
            
imagedestroy($image);
            
imagedestroy($img_temp);
            
imagedestroy($img_old);
            
imagedestroy($bgi);

        }
        else{      
                
// We are going to try and get this image the old fashioned way...
            
$extList = array();
            
$extList['gif'] = 'image/gif';
            
$extList['jpg'] = 'image/jpeg';
            
$extList['jpeg'] = 'image/jpeg';
            
$extList['png'] = 'image/png';

            
//Define the output file type
            
$contentType 'Content-type: '.$extList$imageinfo['extension'] ];

            if(
$imageinfo['extension'] =! "image/gif" and $imageinfo['extension'] =! "image/jpeg" and $imageinfo['extension'] =! "image/png"){             
                throw new 
InvalidIDException("The file Extension is not allowed!");
            }
            else{
                
// File type is allowed, so proceed
                
$status "";
                
header($contentType);
                
$curl = new Curl($image);
                
$curl->setHeader();
                
$curl->exec();
                
$curl->close();
            } 
        }
    }
    
    public function 
daycare(){        
        
$daycare = new Daycare;
        
$adopts $daycare->getAdopts();
        
$this->setField("daycare"$daycare);
    }
}
?>
However, in 1.3.4, we have another file in view/levelupview.php, and it contains all the document writing variables, but won't be able to find $message written on a local scope in a completely different document, probably:

PHP Code:
<?php

use Resource\Collection\ArrayList;
use 
Resource\Utility\Curl;

class 
LevelupView extends View{
    
    public function 
click(){
        
$mysidia Registry::get("mysidia");
        
$document $this->document;                
        
$adopt $this->getField("adopt");            
        
$reward $this->getField("reward")->getValue();
        
$document->setTitle("{$this->lang->gave} {$adopt->getName()} one {$this->lang->unit}");

        
$image $adopt->getImage("gui");        
        
$image->setLineBreak(TRUE);        
        
$summary = new Division;
        
$summary->setAlign(new Align("center"));
        
$summary->add($image);    
        
$summary->add(new Comment("{$this->lang->gave}{$adopt->getName()} one {$this->lang->unit}."));
        
$summary->add(new Comment($this->lang->encourage));
        
$summary->add(new Comment("<br> You have earned {$reward} {$mysidia->settings->cost} for leveling up this adoptable. "));
        
$summary->add(new Comment("You now have {$mysidia->user->getcash()} {$mysidia->settings->cost}"));
        
$document->add($summary);            
    }

    public function 
siggy(){
    
    }
    
    public function 
daycare(){
        
$mysidia Registry::get("mysidia");
        
$document $this->document;    
        
$document->setTitle($this->lang->daycare_title);
        
$document->addLangvar($this->lang->daycareTRUE);
        
        
$daycare $this->getField("daycare");
        
$adopts $daycare->getAdopts();
        
$daycareTable = new Table("daycare"""FALSE);
        
$daycareTable->setBordered(FALSE);
        
$total $daycare->getTotalAdopts();
        
$index 0;

        for(
$row 0$row $daycare->getTotalRows(); $row++){
            
$daycareRow = new TRow("row{$row}");
            for(
$column 0$column $daycare->getTotalColumns(); $column++){
                
$adopt = new OwnedAdoptable($adopts[$index]);
                
$cell = new ArrayList;
                
$cell->add(new Link("levelup/click/{$adopt->getAdoptID()}"$adopt->getImage("gui"), TRUE));
                
$cell->add(new Comment($daycare->getStats($adopt)));
                
$daycareCell = new TCell($cell"cell{$index}");
                
$daycareCell->setAlign(new Align("center""center"));
                
$daycareRow->add($daycareCell);
                
$index++;
                if(
$index == $total) break;
            }
            
$daycareTable->add($daycareRow);            
        }
        
        
$document->add($daycareTable);
        if(
$pagination $daycare->getPagination()) $document->addLangvar($pagination->showPage());
    }
}
?>
That's with no modifications, of course, because it's a file you aren't used to and had no instructions for. I can modify it, of course. I actually don't need anymore help? Seems pretty straight forward from here on out.

I really wish Mysidia would feed pets on a button click, rather than on a page view. *sigh*
__________________
Please do not contact me directly outside of Mysidia.
I also cannot troubleshoot code more than two years old - I legit don't remember it.
Reply With Quote
  #13  
Old 07-09-2014, 01:12 PM
Hwona's Avatar
Hwona Hwona is offline
Member
 
Join Date: Mar 2013
Posts: 620
Gender: Female
Credits: 58,591
Hwona is on a distinguished road
Default

^Oh, so you can figure it out? As long as you get over the "not having the document" stuff in the pages, the rest might work.
Edit: With the version I'm using the error title shows up too I think. It just has different text. So yes, you basically have everything the way I have it for already clicked non-frozen pets. You just need to style it.
__________________

Last edited by Hwona; 07-09-2014 at 01:19 PM.
Reply With Quote
  #14  
Old 11-11-2014, 11:07 AM
Kyttias's Avatar
Kyttias Kyttias is offline
Premium Member
 
Join Date: Jan 2014
Posts: 857
Gender: Unknown/Other
Credits: 111,664
Kyttias is on a distinguished road
Default

Your first two image steps are missing.

So until that's fixed, in case anyone's curious, you're basically just making a field like the ones that hold the type, name, and owner. They're VARCHAR 40 which should be plenty of room - that's 40 letters/characters, of course. If you assign a default value, all currently existing adopts will have their new column filled with that default value.

__________________
Please do not contact me directly outside of Mysidia.
I also cannot troubleshoot code more than two years old - I legit don't remember it.
Reply With Quote
  #15  
Old 12-20-2015, 05:59 PM
tahbikat's Avatar
tahbikat tahbikat is offline
Member
 
Join Date: Feb 2014
Location: Louisiana
Posts: 408
Gender: Female
Credits: 57,925
tahbikat is on a distinguished road
Default

Has anyone added this successfully for 1.3.4?

The first step works for adoptables on the adopt page, but not for shop (stock) adoptables, and I haven't tested out breed adopts and promo ones.

I've tried adding and tweaking the code and putting it in the class files (class_stockadopt, class_promo, etc) but I've been unsuccessful so far. For example getting errors when I try to purchase an adopt. Any help? :< Would really love this on my site.

EDIT: Umm, nevermind, I did it. Lordy I have such a nasty habit of fixing my problems literally right after I post them LOL.

Last edited by tahbikat; 12-20-2015 at 06:27 PM.
Reply With Quote
  #16  
Old 12-18-2016, 10:13 PM
parayna's Avatar
parayna parayna is offline
Member
 
Join Date: May 2013
Location: Devon, UK
Posts: 342
Gender: Female
Credits: 22,779
parayna is on a distinguished road
Default

I know this post is pretty much dead, but does anyone have an idea for what the images on the front page show? I'd like to implement this on my 1.3.4 site but the images are now broken.. xD

Thank you ^_^
Reply With Quote
Reply


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
Pets with Personality? Kyttias Suggestions and Feature Requests 24 07-04-2014 04:03 PM
Anyone Want to Have a Stat System Hwona Feedback and Suggestions 12 06-30-2014 10:30 AM
Abandon system bokkun Mys v1.1.x Mods 30 11-16-2010 11:19 PM
Trade System? SieghartZeke Questions and Supports 1 12-28-2009 08:06 AM
Evolution system? Hall of Famer Questions and Supports 10 11-05-2009 06:54 PM


All times are GMT -5. The time now is 04:37 AM.

Currently Active Users: 1324 (0 members and 1324 guests)
Threads: 4,081, Posts: 32,032, 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