id = $id; $this->rezeptname = $name; $this->beruf = $job; $this->mod = $erleichterung; } //Methoden function need($nr,$roh,$menge=1) { $this->rohstoff[$nr] = $roh; $this->menge[$nr] = $menge; } function check($part=false) { global $session; $match = true; foreach($this->rohstoff as $key=>$element) { if($session[inventar][$element] < $this->menge[$key]) { $match=false; } } return $match; } function hat_rezept() { global $session; if(in_array($this->id,$session[user][rezepte])) { return TRUE; } else { return FALSE; } } function probe($mods=0) { global $session; global $craft; global $result; global $tap; global $upskillbonus; $result=array($wertA,$wertB,$wertC);//Nur debug Info $tap+=($mods+$this->mod); $fail=false; $wertA=e_rand(1,20); $wertB=e_rand(1,20); $wertC=e_rand(1,20); //Berufsspezifische Probenwerte: switch($this->beruf) { case 0: $abfA="kr"; $abfB="kr"; $abfC="ge"; break; case 1: $abfA="kl"; $abfB="in"; $abfC="in"; break; case 2: $abfA="ge"; $abfB="ge"; $abfC="in"; break; case 3: $abfA="kr"; $abfB="ge"; $abfC="in"; break; } if($wertA>$craft[$abfA]) { if(($wertA-$craft[$abfA])<=$tap) { $tap-=($wertA-$craft[$abfA]); } else { $fail=true; } }if(!$fail && $wertB>$craft[$abfB]) { if(($wertB-$craft[$abfB])<=$tap) { $tap-=($wertB-$craft[$abfB]); } else { $fail=true; } }if(!$fail && $wertC>$craft[$abfC]) { if(($wertC-$craft[$abfC])<=$tap) { $tap-=($wertC-$craft[$abfC]); } else { $fail=true; } } if($tap==0) $tap=1; if(!$fail) { $geschafft=$tap; $session[user][skill]+=$upskillbonus; } else { $geschafft=0; } return $geschafft; } //ENDE } //Erstellung && Definition: //Leinentuche $rezept[2][0] = new rezept(0,"Billiges Leinen",2,3); $rezept[2][0]->need(0,"Flachs",1); $rezept[2][1] = new rezept(1,"Einfaches Leinen",2,1); $rezept[2][1]->need(0,"Flachs",2); $rezept[2][1]->need(1,"Faden",1); $rezept[2][2] = new rezept(2,"Normales Leinen",2,-1); $rezept[2][2]->need(0,"Flachs",4); $rezept[2][2]->need(1,"Faden",1); //Leinenbeutel $rezept[2][3] = new rezept(3,"Schäbiger Leinenbeutel",2,3); $rezept[2][3]->need(0,"Billiges Leinen",5); $rezept[2][3]->need(1,"Faden",2); $rezept[2][4] = new rezept(4,"Kleiner Leinenbeutel",2,0); $rezept[2][4]->need(0,"Einfaches Leinen",3); $rezept[2][4]->need(1,"Billiges Leinen",5); $rezept[2][4]->need(2,"Faden",2); //Leinenkleider $rezept[2][5] = new rezept(5,"Schäbiges Leinenhemd",2,2); $rezept[2][5]->need(0,"Billiges Leinen",8); $rezept[2][5]->need(0,"Faden",3); ?>