Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- define('RipeOR_Version', '1.0');
- define('RipeOR_Version_Full', 'RipeOR v' . RipeOR_Version);
- define('RipeOR_Version_Date', '27-12-2011');
- // INIT ------------------------------------------------------------------------
- function RipeOR_init() {
- echo 'Loaded RipeOR v' . RipeOR_Version;
- //set hooks
- $_SESSION['hooks']['after_planting'] = 'runRipeOR';
- }
- // Load settings ---------------------------------------------------------------
- function ROR_loadSettings() {
- @$cfg = load_array('config.txt');
- if (!@$cfg) {
- @$cfg = array(
- 'xww_icepalace' => ''
- );
- }
- return @$cfg;
- }
- // Logging ---------------------------------------------------------------------
- function RORlog($msg) {
- AddLog2('RipeOR: ' . $msg);
- }
- // RUN (after planting) --------------------------------------------------------
- function runRipeOR() {
- $_SESSION['tmpId'] = 63000;
- @$cfg = ROR_loadSettings();
- foreach($cfg as $key => $value) {
- if($value['run'] == 1) {
- DoInit();
- RORlog('Searching ' . Units_GetRealnameByName($key) . '...');
- $buildingObj = false;
- $obj = GetObjects('', $_SESSION['currentWorld']);
- foreach ($obj as $o) {
- if ($o['itemName'] == $key) {
- $buildingObj = $o;
- break;
- }
- }
- ///57 58 80 82 boo note lol
- if (!$buildingObj) {
- RORlog('unable to find ' . Units_GetRealnameByName($key) . ' is it on your farm?');
- return;
- }
- if($buildingObj){
- if ($buildingObj['state'] == 'ripe') {
- RORlog('harvesting ' . @Units_GetRealnameByName($key) . ' because it\'s already ripe...');
- harvestBuilding($buildingObj);
- }
- RORlog('Starting (' . @$value['amount'] . ' times)...');
- for ($i = 0; $i < @$value['amount']; $i++) {
- RORlog('Harvesting '. @Units_GetRealnameByName($key));
- if (!harvestIt($buildingObj)) {
- RORlog('FAILED! please check your farm!');
- return;
- }
- }
- RORlog('Done Harvesting '.@Units_GetRealnameByName($key));
- }
- }
- }
- }
- function harvestIt($buildingObj) {
- $amf = CreateMultAMFRequest($amf, 0, 'place', 'WorldService.performAction');
- $ripeObj = array('itemName'=>'cherry','className'=>'Tree','position'=>array('x'=>0,'y'=>0,'z'=>0));
- $amf->_bodys[0]->_value[1][0]['params'][1] = $ripeObj;
- $amf->_bodys[0]->_value[1][0]['params'][1]['tempId'] = -1;
- $amf->_bodys[0]->_value[1][0]['params'][1]['direction'] = 0;
- $amf->_bodys[0]->_value[1][0]['params'][1]['plantTime'] = null;
- $amf->_bodys[0]->_value[1][0]['params'][1]['state'] = 'bare';
- $amf->_bodys[0]->_value[1][0]['params'][1]['id'] = $_SESSION['tmpId']++;
- $amf->_bodys[0]->_value[1][0]['params'][2] = array();
- $amf->_bodys[0]->_value[1][0]['params'][2][0]['isGift'] = false;
- $amf->_bodys[0]->_value[1][0]['params'][2][0]['energyCost'] = 0;
- $amf = CreateMultAMFRequest($amf, 0, 'store', 'WorldService.performAction');
- $buildingObj['itemName'] = 'horsestablewhite';
- $amf->_bodys[0]->_value[1][0]['params'][1] = $buildingObj;
- $amf->_bodys[0]->_value[1][0]['params'][1]['tempId'] = -1;
- $amf->_bodys[0]->_value[1][0]['params'][2] = array();
- $amf->_bodys[0]->_value[1][0]['params'][2][0]['isGift'] = false;
- $amf->_bodys[0]->_value[1][0]['params'][2][0]['resource'] = $_SESSION['tmpId'];
- $amf->_bodys[0]->_value[1][0]['params'][2][0]['storedClassName'] = 'Tree';
- $amf->_bodys[0]->_value[1][0]['params'][2][0]['cameFromLocation'] = 0;
- $amf->_bodys[0]->_value[1][0]['params'][2][0]['storedItemCode'] = 'CH';
- $amf->_bodys[0]->_value[1][0]['params'][2][0]['storedItemName'] = 'cherry';
- $amf = CreateMultAMFRequest($amf, 2, 'harvest', 'WorldService.performAction');
- $amf->_bodys[0]->_value[1][2]['params'][1] = $buildingObj;
- $amf->_bodys[0]->_value[1][2]['params'][2] = array();
- $amf->_bodys[0]->_value[1][2]['params'][2][0]['energyCost'] = 0;
- $resp = RequestAMF($amf, true);
- AddLog2(print_r($resp['amf2'], true));
- if ($resp['res'] != 'OK') {
- RORlog('unnable to store/plant/harvest ' . @Units_GetRealnameByName($key) . ' (' . $resp['res'] . ')');
- DoInit();
- return false;
- } else {
- return true;
- }
- }
- function storeRipeObj($buildingObj) {
- $buildingObj['itemName'] = 'horsestablewhite';
- $amf = CreateRequestAMF('store', 'WorldService.performAction');
- $amf->_bodys[0]->_value[1][0]['params'][1] = $buildingObj;
- $amf->_bodys[0]->_value[1][0]['params'][1]['tempId'] = -1;
- $amf->_bodys[0]->_value[1][0]['params'][2] = array();
- $amf->_bodys[0]->_value[1][0]['params'][2][0]['isGift'] = false;
- $amf->_bodys[0]->_value[1][0]['params'][2][0]['resource'] = $_SESSION['ripeId'];
- $amf->_bodys[0]->_value[1][0]['params'][2][0]['storedClassName'] = 'Tree';
- $amf->_bodys[0]->_value[1][0]['params'][2][0]['cameFromLocation'] = 0;
- $amf->_bodys[0]->_value[1][0]['params'][2][0]['storedItemCode'] = 'CH';
- $amf->_bodys[0]->_value[1][0]['params'][2][0]['storedItemName'] = 'cherry';
- $resp = RequestAMF($amf);
- if ($resp != 'OK') {
- RORlog('unnable to store ' . @Units_GetRealnameByName($key) . ' (' . $resp . ')');
- DoInit();
- return false;
- } else {
- return true;
- }
- }
- // 'plantTime'=>$plantTime, removed from $ripeObj array
- function placeBuilding() {
- // $plantTime = time() - 82799 - 1;
- $ripeObj = array('itemName'=>'cherry','className'=>'Tree','position'=>array('x'=>0,'y'=>0,'z'=>0));
- $amf = CreateRequestAMF('place', 'WorldService.performAction');
- $amf->_bodys[0]->_value[1][0]['params'][1] = $ripeObj;
- $amf->_bodys[0]->_value[1][0]['params'][1]['tempId'] = -1;
- $amf->_bodys[0]->_value[1][0]['params'][1]['direction'] = 0;
- $amf->_bodys[0]->_value[1][0]['params'][1]['state'] = 'bare';
- $amf->_bodys[0]->_value[1][0]['params'][1]['id'] = $_SESSION['tmpId']++;
- $amf->_bodys[0]->_value[1][0]['params'][2] = array();
- $amf->_bodys[0]->_value[1][0]['params'][2][0]['isGift'] = false;
- $amf->_bodys[0]->_value[1][0]['params'][2][0]['energyCost'] = 0;
- $res = RequestAMF($amf,true);
- $resp = $res['res'];
- $amf2 = $res['amf2'];
- if ($resp != 'OK') {
- RORlog('Unable To Place ' . @Units_GetRealnameByName($key) . ' (' . $resp . ')');
- DoInit();
- return false;
- } else {
- $_SESSION['ripeId'] = $amf2->_bodys[0]->_value['data'][0]['data']['id'];
- return true;
- }
- }
- function harvestBuilding($buildingObj, $silent = false) {
- $amf = CreateRequestAMF('harvest', 'WorldService.performAction');
- $amf->_bodys[0]->_value[1][0]['params'][1] = $buildingObj;
- $amf->_bodys[0]->_value[1][0]['params'][2] = array();
- $amf->_bodys[0]->_value[1][0]['params'][2][0]['energyCost'] = 0;
- $resp = RequestAMF($amf);
- if ($resp != 'OK') {
- if (!$silent) {
- RORlog('Unable To Harvest ' . Units_GetRealnameByName($key) . '(' . $resp . ')');
- }
- DoInit();
- return false;
- } else {
- return true;
- }
- }
- ?>
Add Comment
Please, Sign In to add comment