1. The forums will be archived and moved to a read only mode in about 2 weeks (mid march).

Solved Save player coordinates to config

Discussion in 'Development' started by ItsInspire, Dec 30, 2020.

  1. ItsInspire

    ItsInspire Silverfish

    Messages:
    15
    GitHub:
    itsinspire
    I've been trying to save player coordinates, gamemode and level to a config. How can I get this to work? It crashes

    Error:
    [12:42:59] [Server thread/CRITICAL]: ParseError: "syntax error, unexpected '"x"' (T_CONSTANT_ENCAPSED_STRING), expecting ')'" (EXCEPTION) in "plugins/TestPlugin/src/ItsInspire/TestPlugin/Main" at line 215
    [12:42:59] [Server thread/CRITICAL]: #0 vendor/pocketmine/classloader/src/BaseClassLoader(124): BaseClassLoader->loadClass(string[27] ItsInspire\TestPlugin\Main)
    [12:42:59] [Server thread/CRITICAL]: #1 (): BaseClassLoader->{closure}(string[27] ItsInspire\TestPlugin\Main)
    [12:42:59] [Server thread/CRITICAL]: #2 (): spl_autoload_call(string[27] ItsInspire\TestPlugin\Main)
    [12:42:59] [Server thread/CRITICAL]: #3 src/pocketmine/plugin/PluginManager(167): class_exists(string[27] ItsInspire\TestPlugin\Main, boolean 1)
    [12:42:59] [Server thread/CRITICAL]: #4 src/pocketmine/plugin/PluginManager(346): pocketmine\plugin\PluginManager->loadPlugin(string[79] C:\Users\Dev\OneDrive\Desktop\PMMP Projects\PC-TestServer\plugins\TestPlugin, array[1])
    [12:42:59] [Server thread/CRITICAL]: #5 plugins/PocketMine-DevTools.phar/src/DevTools/DevTools(69): pocketmine\plugin\PluginManager->loadPlugins(string[68] C:\Users\Dev\OneDrive\Desktop\PMMP Projects\PC-TestServer\plugins\, array[1])
    [12:42:59] [Server thread/CRITICAL]: #6 src/pocketmine/plugin/PluginBase(116): DevTools\DevTools->onEnable()
    [12:42:59] [Server thread/CRITICAL]: #7 src/pocketmine/plugin/PluginManager(552): pocketmine\plugin\PluginBase->setEnabled(boolean 1)
    [12:42:59] [Server thread/CRITICAL]: #8 src/pocketmine/Server(1787): pocketmine\plugin\PluginManager->enablePlugin(object DevTools\DevTools)
    [12:42:59] [Server thread/CRITICAL]: #9 src/pocketmine/Server(1773): pocketmine\Server->enablePlugin(object DevTools\DevTools)
    [12:42:59] [Server thread/CRITICAL]: #10 src/pocketmine/Server(1532): pocketmine\Server->enablePlugins(integer 0)
    [12:42:59] [Server thread/CRITICAL]: #11 src/pocketmine/PocketMine(273): pocketmine\Server->__construct(object BaseClassLoader, object pocketmine\utils\MainLogger, string[60] C:\Users\Dev\OneDrive\Desktop\PMMP Projects\PC-TestServer\, string[68] C:\Users\Dev\OneDrive\Desktop\PMMP Projects\PC-TestServer\plugins\)
    [12:42:59] [Server thread/CRITICAL]: #12 src/pocketmine/PocketMine(304): pocketmine\server()
    [12:42:59] [Server thread/CRITICAL]: #13 (11): require(string[115] phar://C:/Users/Dev/OneDrive/Desktop/PMMP Projects/PC-TestServer/PocketMine-MP)

    Code:
    PHP:
    public function savePos(Player $player){

            
    //Save player position
            
    $this->config = new Config($this->getDataFolder() . "players/" strtolower($player->getName()), Config::YAML, array(
                
    "gamemode" => $player->getGamemode(); //error was here
                
    "x" => $player->getX();
                
    "y" => $player->getY();
                
    "z" => $player->getZ();
                
    "level" => $player->getLevel();
            ));
            
    $this->config;
            
    $this->config->save();
                
        }
     
  2. Primus

    Primus Zombie Pigman

    Messages:
    749
    Replace simi-colon ; with coma ,
     
    ItsInspire and HyGlobalHD like this.
  3. HyGlobalHD

    HyGlobalHD Spider Jockey

    Messages:
    25
    GitHub:
    HyGlobalHD
    As Primus just said use "," instead of ";" for inside the array

    Code:
    PHP:
    public function savePos(Player $player){

            
    //Save player position
            
    $this->config = new Config($this->getDataFolder() . "players/" strtolower($player->getName()), Config::YAML, array(
                
    "gamemode" => $player->getGamemode(),
                
    "x" => $player->getX(),
                
    "y" => $player->getY(),
                
    "z" => $player->getZ(),
                
    "level" => $player->getLevel()
            ));
            
    $this->config;
            
    $this->config->save();
               
        }
    [/QUOTE]
     
    Primus and ItsInspire like this.
  4. ItsInspire

    ItsInspire Silverfish

    Messages:
    15
    GitHub:
    itsinspire
    Thank you for the help!
     
    Primus likes this.
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.