Codify Music

Abril 11, 2008

Mamonas Assassinas – Sabão Crá-Crá

Arquivado em: PHP, Rock — usosim @ 8:04 pm
Tags: , ,

Acredito que Mamonas fez parte da infância de todos aqui, da minha não foi diferente. Em homenagem ao super grupo de besteirou, um Music Code do Sabão Crá-Crá.

$saboes = array(new Sabao('crá'),new Sabao('cré'),new Sabao('cri'),new Sabao('cró'),new Sabao('crú'));

$cabelo = new CabeloDoSaco();

foreach($saboes as $sabao) {

	echo 'Sabão '. $sabao->apelido();
 echo 'Sabão '. $sabao->apelido();

	echo 'Não deixe o cabelo do saco ';
 switch($sabao->nome){
 	'crá': $cabelo->enrolar();break;
 	'cré': $cabelo->dePe();break;
 	'cri': $cabelo->cair();break;
 	'cró': $cabelo->daNo();break;
 	'crú':
 		/* Comentário do Cantor
 		*	Êita, diachu!
 		*/
 		$c_ = new CabeloDoC_();
 		$cabelo->enrolar($c_);
 }
}
?>
class Sabao {
 public $name;

	function __construct($nome){
 	$this->nome = $nome;
 }
 public function apelido(){
 	return $this->name . '-' . $this->name;
 }
}
class Pelo {
 var $estado = array(
 	'enrolado'=>array('com'=>null),
 	'dePe'=>false,
 	'comNo'=>false
 );
 private function enrolar($com = null){
 	if (is_null($com)){
 		$this->estado['enrolado']['com'] = $this;
 	}
 	else {
 		$this->estado['enrolado']['com'] = $com;
 	}
 }
 private function ficarDePe(){
 	$this->estado['dePe']=true;
 }
 private function darNo(){
 	$this->estado['comNo']=true;
 }
}
class Cabelo {
 protected $pelos = array();
 function __construct(){
 	for ($i = 0; $i < NUM_PELOS; $i++){
 		array_push($this->pelos, new Pelo)
 	}
 }
 protected function getUmPelo(){
 	return $this->pelos[rand(0,count($this->pelos))];
 }
 protected function enrolar ($com = null){
 	$num = count($this->pelos);
 	if (is_null($com)){
 		for ($i = 0; $i < $num; $i++){
 			$this->pelos[$i]->enrolar();
 		}
 	} else {
 		for ($i = 0; $i < num; $i++){
 			$this->pelos[$i]->enrolar($com->getUmPelo());
 		}
 	}
 }
 protected function dePe (){
 	$num = count($this->pelos);
 	for ($i = 0; $i < $num; $i++){
 		$this->pelos[$i]->ficarDePe();
 	}
 }
 protected function cair(){
 	$num = count($this->pelos);
 	for ($i = 0; $i < $num; $i++){
 		unset($this->pelos[$i]);
 	}
 }
 protected function daNo(){
 	$num = count($this->pelos);
 	for ($i = 0; $i < $num; $i++){
 		$this->pelos[$i]->ficarDePe();
 	}
 }
}
class CabeloDoSaco extends Cabelo{
 private $estilo = 'Enrolados';

}
class CabeloDoC_ extends Pelo{
   private $sujo = true;
}

Agora é só compilar… ops, ouvir! Que os ponteiros estejam com vocês! Flws!

1 Comentário »

  1. dificil acreditar que tu ficou tanto tempo fritando nisso…
    mas ficou iradão!!!!

    Comentário por passarinho — Abril 11, 2008 @ 9:37 pm


Feed RSS dos comentários deste post URI do TrackBack

Deixe um comentário

Blog no WordPress.com.