event LevelInstanceCreatedLog(address indexed player, address instance); event LevelCompletedLog(address indexed player, Level level); function createLevelInstance(Level _level) public payable { // Ensure level is registered. require(registeredLevels[_level]); // Get level factory to create an instance. address instance = _level.createInstance.value(msg.value)(msg.sender); // Store emitted instance relationship with player and level. emittedInstances[instance] = EmittedInstanceData(msg.sender, _level, false); // Retrieve created instance via logs. LevelInstanceCreatedLog(msg.sender, instance); }
0.4.18