Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --[[VARIABLE DEFINITION ANOMALY DETECTED, DECOMPILATION OUTPUT POTENTIALLY INCORRECT]]--
- -- Decompiled with the Synapse X Luau decompiler.
- local v1 = {};
- local u1 = nil;
- coroutine.wrap(function()
- u1 = require(game.ReplicatedStorage:WaitForChild("Framework"):WaitForChild("Library"));
- end)();
- local v2 = game:GetService("RunService"):IsServer();
- local v3 = {
- AllBakeries = {},
- VOXEL_SIZE = 4,
- MAX_FLOORS = 10
- };
- function v3.new(p1, p2, p3)
- local v4 = setmetatable({}, {
- __index = v3
- });
- v4.floors = {};
- v4.owner = game.Players:FindFirstChild(p2);
- v4.building = {
- walls = {}
- };
- v4.UID = u1.Functions.GenerateUID();
- v4.themeID = p3;
- v4.Entities = {};
- v3.AllBakeries[v4.UID] = v4;
- v4.locationPart = p1;
- v4.rootPosition = v4.locationPart.Position;
- v4.baseOrientation = v4.locationPart.Orientation.Y;
- v4.baseAngle = math.rad(v4.locationPart.Orientation.Y);
- v4.isOpen = false;
- v4.isTutorial = false;
- v4.tutorial = {
- bot = nil,
- readyToAllowStoreToOpen = false,
- hasAllowedStoreToOpen = false,
- readyForFirstWaveOfCustomers = false,
- hasAllowedFirstWaveOfCustomers = false,
- firstCustomerWave = {},
- readyForUserToCook = false,
- readyForUserToServe = false,
- readyForUserToCash = false,
- readyForUserToWash = false,
- readyForUserToHire = false
- };
- v4.playerFloorLevel = 1;
- v4.customerQueue = {};
- v4.container = Instance.new("Folder", workspace.__THINGS.BAKERIES);
- v4.container.Name = u1.Player.Get("Name");
- v4.foodContainer = Instance.new("Folder");
- v4.foodContainer.Name = "Food";
- v4.foodContainer.Parent = v4.container;
- v4.exterior = Instance.new("Folder", v4.container);
- v4.exterior.Name = "Exterior";
- v4.animatedPath = nil;
- v4.animatedPathTargetFloor = nil;
- v4.animatedPathTargetX = nil;
- v4.animatedPathTargetZ = nil;
- v4.interactPool = {};
- v4.nameCounters = setmetatable({}, {
- __index = function()
- return 0;
- end
- });
- v4.jukebox = nil;
- v4.activeCelebrity = false;
- v4.coffeeMachines = {};
- return v4;
- end;
- function v3.FromUIDData(p4, p5, p6, p7)
- local v5 = v3.new(p5, p6, p7);
- v5.currentDay = p4.CurrentDay;
- v5.experience = p4.Experience;
- local v6, v7, v8 = ipairs(p4.Floor);
- while true do
- v6(v7, v8);
- if not v6 then
- break;
- end;
- v8 = v6;
- v5.floors[v6] = u1.Floor.new(v5, v7);
- end;
- v5:CreateEntitiesFromUIDData(p4);
- return v5;
- end;
- function v3.Initialize(p8, p9, p10, p11)
- local v9 = v3.FromUIDData(p8, p9, game.Players.LocalPlayer.Name, p10);
- u1.Variables.MyBakery = v9;
- local v10, v11, v12 = ipairs(v9.floors);
- while true do
- v10(v11, v12);
- if not v10 then
- break;
- end;
- v12 = v10;
- v11:InitializePositionTable();
- v11:InitExterior();
- end;
- local v13 = workspace.__THINGS.BUTTONS.TeleportModel:Clone();
- v9.teleportPart = v13.TeleportPart;
- v13.Parent = v9.exterior;
- v13:SetPrimaryPartCFrame(CFrame.new(v9.locationPart.Position) * CFrame.Angles(0, v9.baseAngle, 0) * CFrame.new(8, -0.4, -45) * CFrame.Angles(0, 0, 3 * math.pi / 2));
- v9.teleportPart.BillboardGui.Title.Text = "Shop!";
- v9.doorCFrame = v9:GetFloorFromLevel(1).exteriorModel.TUTORIAL_LOCK_DOOR.CFrame;
- v9.isTutorial = p11;
- u1.Food.LoadOwnedRecipes();
- v9:StartAnimatedPathUpdateLoop();
- end;
- local l__LocalPlayer__2 = game.Players.LocalPlayer;
- function v3.InitializeOtherPlayer(p12, p13, p14, p15, p16)
- local u3 = v3.FromUIDData(p12, p13, p14.Name, p15);
- coroutine.wrap(function()
- local v14, v15, v16 = ipairs(u3.floors);
- while true do
- v14(v15, v16);
- if not v14 then
- break;
- end;
- v16 = v14;
- v15:InitExterior();
- wait(0.75);
- end;
- pcall(function()
- local v17 = u3.floors[1];
- if v17 then
- local u4 = false;
- v17.exteriorModel.BLACKLIST_DOOR.Touched:Connect(function(p17)
- if not v17.exteriorModel.BLACKLIST_DOOR.CanCollide then
- return;
- end;
- if p17.Parent ~= l__LocalPlayer__2.Character then
- return;
- end;
- if u4 then
- return;
- end;
- u4 = true;
- coroutine.wrap(function()
- wait(2);
- u4 = false;
- end)();
- u1.Message.New("The Restaurant owner has blacklisted you from entering.");
- end);
- end;
- end);
- end)();
- return u3;
- end;
- function v3.GetBakeryByUID(p18)
- return v3.AllBakeries[p18];
- end;
- function v3.GetBakeryByOwner(p19)
- for v18, v19 in pairs(v3.AllBakeries) do
- if v19.owner == p19 then
- return v19;
- end;
- end;
- return nil;
- end;
- function v3.IsMyBakery(p20)
- return p20.owner == game.Players.LocalPlayer;
- end;
- function v3.ChangeTheme(p21, p22)
- p21.themeID = p22;
- local v20, v21, v22 = ipairs(p21.floors);
- while true do
- v20(v21, v22);
- if not v20 then
- break;
- end;
- v22 = v20;
- v21:ReInitExterior();
- end;
- end;
- function v3.SearchForCelebrity(p23)
- local v23, v24, v25 = ipairs(p23.floors);
- while true do
- v23(v24, v25);
- if not v23 then
- break;
- end;
- v25 = v23;
- local v26, v27, v28 = ipairs(v24.customers);
- while true do
- v26(v27, v28);
- if not v26 then
- break;
- end;
- v28 = v26;
- if v27.ID == "20" then
- return v27;
- end;
- end;
- end;
- return nil;
- end;
- function v3.GenerateFurnitureApplianceWhitelist(p24)
- local v29 = {};
- local v30, v31, v32 = ipairs(p24.floors);
- while true do
- v30(v31, v32);
- if not v30 then
- break;
- end;
- v32 = v30;
- table.insert(v29, v31.furnitureContainer);
- table.insert(v29, v31.applianceContainer);
- end;
- return v29;
- end;
- function v3.CountEntity(p25, p26, p27)
- end;
- function v3.GetOwnedCountByName(p28, p29)
- return p28.nameCounters[p29];
- end;
- function v3.GetBlacklistDoor(p30)
- return p30.floors[1].exteriorModel:FindFirstChild("BLACKLIST_DOOR");
- end;
- function v3.CreateEntitiesFromUIDDataReplication(p31, p32)
- local u5 = 0;
- for v33, v34 in pairs(p32.Waiter) do
- u5 = u5 + 1;
- if u5 % 20 == 0 then
- wait();
- end;
- u1.Waiter.FromUIDData(p31, p31:GetFloorFromLevel(v34.FloorLevel), v34);
- end;
- for v35, v36 in pairs(p32.Cook) do
- u5 = u5 + 1;
- if u5 % 20 == 0 then
- wait();
- end;
- u1.Cook.FromUIDData(p31, p31:GetFloorFromLevel(v36.FloorLevel), v36);
- end;
- local v37, v38, v39 = pairs(p32.Furniture);
- while true do
- local v40, v41 = v37(v38, v39);
- if not v40 then
- break;
- end;
- u5 = u5 + 1;
- if u5 % 20 == 0 then
- wait();
- end;
- if not u1.Directory.Furniture[v41.ID].bannedInChina or not u1.China.IsSubjectToChinaPolicies() then
- u1.Furniture.FromUIDData(p31, p31:GetFloorFromLevel(v41.FloorLevel), v41);
- end;
- end;
- local v42, v43, v44 = pairs(p32.Appliance);
- while true do
- local v45, v46 = v42(v43, v44);
- if not v45 then
- break;
- end;
- u5 = u5 + 1;
- if u5 % 20 == 0 then
- wait();
- end;
- if not u1.Directory.Appliance[v46.ID].bannedInChina or not u1.China.IsSubjectToChinaPolicies() then
- u1.Appliance.FromUIDData(p31, p31:GetFloorFromLevel(v46.FloorLevel), v46);
- end;
- end;
- for v47, v48 in pairs(p32.Customer) do
- u5 = u5 + 1;
- if u5 % 20 == 0 then
- wait();
- end;
- u1.Customer.FromUIDData(p31, p31:GetFloorFromLevel(v48.FloorLevel), v48);
- end;
- u1.Network.Fire("GetBakeryOpenStatus", p31.owner);
- end;
- function v3.CreateEntitiesFromUIDData(p33, p34)
- for v49, v50 in pairs(p34.Furniture) do
- if not u1.Directory.Furniture[v50.ID].bannedInChina or not u1.China.IsSubjectToChinaPolicies() then
- u1.Furniture.FromUIDData(p33, p33:GetFloorFromLevel(v50.FloorLevel), v50);
- end;
- end;
- for v51, v52 in pairs(p34.Appliance) do
- if not u1.Directory.Appliance[v52.ID].bannedInChina or not u1.China.IsSubjectToChinaPolicies() then
- u1.Appliance.FromUIDData(p33, p33:GetFloorFromLevel(v52.FloorLevel), v52);
- end;
- end;
- for v53, v54 in pairs(p34.Waiter) do
- if not u1.Directory.Waiter[v54.ID].bannedInChina or not u1.China.IsSubjectToChinaPolicies() then
- u1.Waiter.FromUIDData(p33, p33:GetFloorFromLevel(v54.FloorLevel), v54);
- end;
- end;
- for v55, v56 in pairs(p34.Cook) do
- if not u1.Directory.Cook[v56.ID].bannedInChina or not u1.China.IsSubjectToChinaPolicies() then
- u1.Cook.FromUIDData(p33, p33:GetFloorFromLevel(v56.FloorLevel), v56);
- end;
- end;
- for v57, v58 in pairs(p34.Customer) do
- if not u1.Directory.Customer[v58.ID].bannedInChina or not u1.China.IsSubjectToChinaPolicies() then
- u1.Customer.FromUIDData(p33, p33:GetFloorFromLevel(v58.FloorLevel), v58);
- end;
- end;
- end;
- function v3.GetPlayerVoxel(p35)
- if not p35.playerFloorLevel then
- return nil;
- end;
- local v59 = p35.floors[p35.playerFloorLevel];
- if not l__LocalPlayer__2.Character then
- return nil;
- end;
- local v60, v61, v62 = v59:VoxelFromWorldPosition(l__LocalPlayer__2.Character.HumanoidRootPart.Position);
- if v59:IsValidVoxel(v60, v61, v62) then
- return v60, v61, v62;
- end;
- return nil;
- end;
- function v3.RunTutorial(p36)
- p36.isTutorial = true;
- p36.tutorial.bot = u1.TutorialBot.new();
- local l__SkipTutorial__63 = u1.GUI.Bottom.MainBottomBar.SkipTutorial;
- local l__TUTORIAL_LOCK_DOOR__64 = p36.floors[1].exteriorModel:FindFirstChild("TUTORIAL_LOCK_DOOR");
- if l__TUTORIAL_LOCK_DOOR__64 then
- l__TUTORIAL_LOCK_DOOR__64.CanCollide = true;
- local u6 = false;
- l__TUTORIAL_LOCK_DOOR__64.Touched:Connect(function(p37)
- if game.Players:GetPlayerFromCharacter(p37.Parent) ~= l__LocalPlayer__2 then
- return;
- end;
- if u6 then
- return;
- end;
- u6 = true;
- if p36.isTutorial then
- u1.Message.New("Complete the tutorial to explore outside of your Restaurant!");
- end;
- wait(1);
- u6 = false;
- end);
- end;
- wait(1);
- u1.Signal.Fired("NPCCreated"):Connect(function()
- if u1.Variables.MyBakery.isTutorial then
- u1.Variables.MyBakery.tutorial.hiredNPCDuringTutorial = true;
- u1.TabController.CloseTabs();
- end;
- end);
- u1.Signal.Fired("Tutorial_FirstCustomerAllowed"):Connect(function()
- p36.tutorial.readyForFirstWaveOfCustomers = true;
- while #p36.tutorial.firstCustomerWave == 0 do
- wait();
- end;
- (function()
- while #p36.tutorial.firstCustomerWave < 1 do
- wait();
- end;
- u1.Functions.CameraLookAt(p36.tutorial.firstCustomerWave[1].model.PrimaryPart.Position);
- wait(0.1);
- local v65 = true;
- while true do
- local v66, v67, v68 = ipairs(p36.tutorial.firstCustomerWave);
- while true do
- v66(v67, v68);
- if not v66 then
- break;
- end;
- v68 = v66;
- if v67.state == "WalkingToSeat" then
- v65 = false;
- break;
- end;
- end;
- if not p36.isTutorial then
- return;
- end;
- wait();
- if not v65 then
- break;
- end;
- end;
- end)();
- p36:CleanupAnimatedPath();
- p36.tutorial.bot:Chat("Your customer is deciding what to eat. When ready, take their order by <font color='rgb(255,238,51)'>interacting</font> with them!");
- if not p36.isTutorial then
- return;
- end;
- (function()
- while true do
- local v69 = 0;
- local v70, v71, v72 = ipairs(p36.tutorial.firstCustomerWave);
- while true do
- v70(v71, v72);
- if not v70 then
- break;
- end;
- v72 = v70;
- if v71.state == "WaitingForFood" then
- v69 = v69 + 1;
- end;
- end;
- if not p36.isTutorial then
- return;
- end;
- wait();
- if v69 == 1 then
- break;
- end;
- end;
- end)();
- if not p36.isTutorial then
- return;
- end;
- p36.tutorial.bot:Chat("It's time to cook! <font color='rgb(255,238,51)'>Interact</font> with the <font color='rgb(255,238,51)'>Order Stand</font> so we can start cooking.");
- if not p36.isTutorial then
- return;
- end;
- local v73 = u1.Variables.MyBakery.floors[1];
- local v74 = v73:GetEntitiesFromClassAndSubClass("Appliance", "Order Stand")[1];
- local v75 = v74:GetMyBakery();
- v75:AnimatePathFromPointToPoint(v73, 1, 1, v73, v74.xVoxel, v74.zVoxel);
- v75.animatedPathTargetEntity = v74;
- if not p36.isTutorial then
- return;
- end;
- p36.tutorial.readyForUserToCook = true;
- end);
- u1.Signal.Fired("Tutorial_StartedCooking"):Connect(function()
- if not p36.isTutorial then
- return;
- end;
- p36.tutorial.readyForUserToCook = false;
- p36.tutorial.bot:Chat("Nice! You're getting the hang of it. Let's <font color='rgb(255,238,51)'>wait</font> for your food to cook.");
- end);
- u1.Signal.Fired("Tutorial_FinishedCooking"):Connect(function()
- if not p36.isTutorial then
- return;
- end;
- p36.tutorial.readyForUserToCook = true;
- p36.tutorial.bot:Chat("Looks delicious! <font color='rgb(255,238,51)'>Interact</font> with the <font color='rgb(255,238,51)'>Order Stand</font> to deliver the food!");
- if not p36.isTutorial then
- return;
- end;
- local v76 = u1.Variables.MyBakery.floors[1];
- local v77 = v76:GetEntitiesFromClassAndSubClass("Appliance", "Order Stand")[1];
- local v78 = v77:GetMyBakery();
- v78:AnimatePathFromPointToPoint(v76, 1, 1, v76, v77.xVoxel, v77.zVoxel);
- v78.animatedPathTargetEntity = v77;
- p36.tutorial.readyForUserToServe = true;
- end);
- u1.Signal.Fired("Tutorial_StartedServing"):Connect(function()
- end);
- local function u7()
- while true do
- local v79 = 0;
- local v80, v81, v82 = ipairs(p36.tutorial.firstCustomerWave);
- while true do
- v80(v81, v82);
- if not v80 then
- break;
- end;
- v82 = v80;
- if v81.isDeleted or v81.state ~= "EatingFood" then
- v79 = v79 + 1;
- end;
- end;
- wait();
- if v79 == 1 then
- break;
- end;
- end;
- end;
- u1.Signal.Fired("Tutorial_FinishedServing"):Connect(function()
- p36.tutorial.bot:Chat("You've <font color='rgb(255,238,51)'>completed</font> your first order, nice job!", true).finished(function()
- p36.tutorial.bot:Chat("While your customer eats, let me show you the <font color='rgb(255,238,51)'>BIG Shop</font>!", true).finished(function()
- u1.GUI.Bottom.Gui.Enabled = false;
- u1.GUI.FloorSide.Gui.Enabled = false;
- local l__AngleOnePos__83 = workspace.__CAMERA_ANGLES.AngleOnePos;
- local l__AngleOneLook__84 = workspace.__CAMERA_ANGLES.AngleOneLook;
- local l__CurrentCamera__85 = workspace.CurrentCamera;
- l__CurrentCamera__85.CameraType = Enum.CameraType.Scriptable;
- l__CurrentCamera__85.CFrame = l__AngleOneLook__84 ~= nil and CFrame.new(l__AngleOnePos__83.Position, l__AngleOneLook__84.Position) or l__AngleOnePos__83.CFrame;
- p36.tutorial.bot:Chat("The <font color='rgb(255,238,51)'>BIG Shop</font> is where you will purchase things for your Restaurant!", true).finished(function()
- local l__CurrentCamera__86 = workspace.CurrentCamera;
- l__CurrentCamera__86.CameraType = Enum.CameraType.Scriptable;
- l__CurrentCamera__86.CFrame = workspace.__CAMERA_ANGLES.AngleTwoPos.CFrame;
- p36.tutorial.bot:Chat("You can <font color='rgb(255,238,51)'>buy</font> better furniture, upgraded appliances, fancy decorations, and more!", true).finished(function()
- local l__CurrentCamera__87 = workspace.CurrentCamera;
- l__CurrentCamera__87.CameraType = Enum.CameraType.Custom;
- l__CurrentCamera__87.CameraSubject = l__LocalPlayer__2.Character.Humanoid;
- l__CurrentCamera__87.CFrame = CFrame.new(l__LocalPlayer__2.Character.Head.CFrame.p, p36.tutorial.bot.model.PrimaryPart.Position);
- u1.Network.Fire("TutorialInterruptEatTable");
- task.wait(1.35);
- u1.GUI.Bottom.Gui.Enabled = true;
- u7();
- p36.tutorial.bot:Chat("It's time for some sweet, sweet <font color='rgb(122,255,60)'>money</font>. Pick it up with the <font color='rgb(255,238,51)'>dirty dish</font>, you've earned it!");
- p36.tutorial.readyForUserToWash = true;
- end);
- end);
- end);
- end);
- end);
- u1.Signal.Fired("Tutorial_DishPickedUp"):Connect(function()
- p36.tutorial.bot:Chat("Bring the <font color='rgb(255,238,51)'>dirty dish</font> to the sink!");
- end);
- u1.Signal.Fired("Tutorial_StartedWashing"):Connect(function()
- p36.tutorial.bot:Chat("Awesome job, " .. l__LocalPlayer__2.Name .. "! Now that you've earned some money, you can hire a <font color='rgb(255,238,51)'>waiter</font> or a <font color='rgb(255,238,51)'>cook</font> to help out around your Restaurant.");
- u1.GUIFX.ArrowPing(u1.GUI.Bottom.MainBottomBar.ButtonContainer.Frame.Buttons.Staff, "RIGHT");
- p36.tutorial.readyForUserToHire = true;
- while true do
- wait();
- if p36.tutorial.hiredNPCDuringTutorial then
- break;
- end;
- end;
- p36.tutorial.bot:Chat("Wonderful job " .. l__LocalPlayer__2.Name .. ", that's it! I'll be seeing you. Have a <font color='rgb(255,238,51)'>great</font> time in My Restaurant!", true).finished(function()
- p36.tutorial.bot:PlayLoadedAnimation("wave");
- wait(1.4);
- p36:CleanupTutorial();
- end);
- end);
- u1.Signal.Fire("ForceBakeryOpen");
- p36.tutorial.bot:Chat("Hey, " .. l__LocalPlayer__2.Name .. "! Welcome to My Restaurant! You have a customer! Give them a seat by <font color='rgb(255,238,51)'>interacting</font> with them.", nil, true);
- u1.Signal.Fire("Tutorial_FirstCustomerAllowed");
- (function()
- local v88 = u1.Variables.MyBakery.floors[1];
- while #v88.customers == 0 do
- task.wait();
- end;
- local v89 = v88.customers[1];
- local v90 = v89:GetMyBakery();
- v90:AnimatePathFromPointToPoint(v88, 1, 1, v88, v89.xVoxel, v89.zVoxel);
- v90.animatedPathTargetEntity = v89;
- end)();
- end;
- function v3.CleanupTutorial(p38)
- if not p38.isTutorial then
- return;
- end;
- u1.GUI.Bottom.MainBottomBar.SkipTutorial.Visible = false;
- p38.tutorial.bot:Cleanup();
- p38.isTutorial = false;
- u1.Network.Fire("FinishedTutorial");
- p38.floors[1].exteriorModel.TUTORIAL_LOCK_DOOR.CanCollide = false;
- end;
- function v3.AnimatePathFromPointToPoint(p39, p40, p41, p42, p43, p44, p45)
- if u1.Variables.MyBakery.animatedPath then
- return;
- end;
- local v91 = {};
- if p43 ~= p40 then
- table.insert(v91, p40:AnimatePathFromPointToPoint(p41, p42, p40.floorTransitionXVoxel, p40.floorTransitionZVoxel));
- table.insert(v91, p43:AnimatePathFromPointToPoint(p43.floorTransitionXVoxel, p43.floorTransitionZVoxel, p44, p45));
- else
- table.insert(v91, p43:AnimatePathFromPointToPoint(p41, p42, p44, p45));
- end;
- for v92 = 2, #v91 do
- local v93, v94, v95 = ipairs(v91[v92]:GetChildren());
- while true do
- v93(v94, v95);
- if not v93 then
- break;
- end;
- v95 = v93;
- v94.Parent = v91[1];
- end;
- v91[v92]:Destroy();
- end;
- u1.Variables.MyBakery.animatedPath = v91[1];
- u1.Variables.MyBakery.animatedPathTargetFloor = p43;
- u1.Variables.MyBakery.animatedPathTargetX = p44;
- u1.Variables.MyBakery.animatedPathTargetZ = p45;
- u1.Signal.Fire("BakeryAnimatedPathCreated", p43.floorLevel);
- return v91[1];
- end;
- function v3.AnimatePathFromEntityToEntity(p46, p47, p48)
- u1.Variables.MyBakery.animatedPathTargetEntity = p48;
- return p46:AnimatePathFromPointToPoint(p47:GetMyFloor(), p47.xVoxel, p47.zVoxel, p48:GetMyFloor(), p48.xVoxel, p48.zVoxel);
- end;
- function v3.CleanupAnimatedPath(p49)
- if p49.animatedPath then
- p49.animatedPath = p49.animatedPath:Destroy();
- p49.animatedPathTargetFloor = nil;
- p49.animatedPathTargetEntity = nil;
- p49.animatedPathTargetX = nil;
- p49.animatedPathTargetZ = nil;
- u1.Signal.Fire("BakeryAnimatedPathRemoved");
- end;
- end;
- function v3.StartAnimatedPathUpdateLoop(p50)
- coroutine.wrap(function()
- local v96 = nil;
- local v97 = nil;
- while true do
- u1.Services.RunService.Heartbeat:Wait();
- if p50.animatedPath and l__LocalPlayer__2.Character then
- local v98 = p50.floors[p50.playerFloorLevel];
- if v98 and u1.Player.Get("HumanoidRootPart") then
- local v99, v100, v101 = v98:VoxelFromWorldPosition(l__LocalPlayer__2.Character.HumanoidRootPart.Position);
- if (v99 ~= v96 or v101 ~= v97) and v98:IsValidVoxel(v99, 0, v101) then
- p50.animatedPath = p50.animatedPath:Destroy();
- p50:AnimatePathFromPointToPoint(v98, v99, v101, p50.animatedPathTargetFloor, p50.animatedPathTargetX, p50.animatedPathTargetZ);
- v96 = v99;
- v97 = v101;
- end;
- end;
- end;
- end;
- end)();
- end;
- function v3.ForcedToClose(p51)
- local v102, v103, v104 = ipairs(p51.floors);
- while true do
- v102(v103, v104);
- if not v102 then
- break;
- end;
- for v105 = #v103.customers, 1, -1 do
- v103.customers[v105]:ForcedToLeave();
- end;
- end;
- local v106, v107, v108 = ipairs(p51.floors);
- while true do
- v106(v107, v108);
- if not v106 then
- break;
- end;
- v108 = v106;
- local v109, v110, v111 = ipairs((v107:GetEntitiesFromClassAndSubClass("Appliance", "Order Stand")));
- while true do
- v109(v110, v111);
- if not v109 then
- break;
- end;
- v111 = v109;
- v110:ClearContents();
- end;
- end;
- end;
- function v3.SetOpenStatus(p52, p53)
- p52.isOpen = p53;
- if p52.isOpen ~= p53 and p52.owner == game.Players.LocalPlayer then
- if p52.isOpen then
- p52.customerQueue = {};
- else
- p52:ForcedToClose();
- end;
- end;
- local v112, v113, v114 = ipairs(p52.floors);
- while true do
- v112(v113, v114);
- if not v112 then
- break;
- end;
- v114 = v112;
- for v115, v116 in pairs(v113.furniture) do
- if v116.ID == "51" then
- v116:SetOpenSignStatus(p53);
- end;
- end;
- end;
- if p52:IsMyBakery() then
- u1.Replication.ForceEvent("BakeryOpenStatus", p53);
- end;
- end;
- function v3.GetOpenStatus(p54)
- return p54.isOpen;
- end;
- function v3.GetEntityByUID(p55, p56)
- if not p56 then
- return nil;
- end;
- return p55.Entities[p56];
- end;
- function v3.GetFloorFromLevel(p57, p58)
- if p57.floors[p58] then
- return p57.floors[p58];
- end;
- u1.Print("CRITICAL: Floor #" .. tostring(p58) .. " does not exist.", true);
- return nil;
- end;
- function v3.CleanupAllData(p59)
- for v117, v118 in pairs(p59.Entities) do
- v118:Cleanup();
- end;
- v3.AllBakeries[p59.UID] = nil;
- end;
- function v3.GetAllOfClassName(p60, p61)
- local v119 = {};
- local v120, v121, v122 = ipairs(p60.floors);
- while true do
- v120(v121, v122);
- if not v120 then
- break;
- end;
- v122 = v120;
- local v123, v124, v125 = ipairs(v121:EntityContainerFromClassName(p61));
- while true do
- v123(v124, v125);
- if not v123 then
- break;
- end;
- v125 = v123;
- table.insert(v119, v124);
- end;
- end;
- return v119;
- end;
- function v3.GetPlayerFloor(p62)
- return p62.floors[p62.playerFloorLevel];
- end;
- function v3.UpdateAnimationOptimization(p63)
- local v126, v127, v128 = ipairs(p63.floors);
- while true do
- v126(v127, v128);
- if not v126 then
- break;
- end;
- v128 = v126;
- local v129, v130, v131 = ipairs(v127.customers);
- while true do
- v129(v130, v131);
- if not v129 then
- break;
- end;
- v131 = v129;
- if not v130:PlayerIsOnMyFloor() then
- v130:PauseCurrentAnimation();
- elseif v130.runningAnimation then
- v130:PlayLoadedAnimation(v130.runningAnimation);
- end;
- end;
- end;
- end;
- function v3.UpdateEmojiVisibility(p64)
- local v132, v133, v134 = ipairs(p64.floors);
- while true do
- v132(v133, v134);
- if not v132 then
- break;
- end;
- local v135, v136, v137 = ipairs(v133.customers);
- while true do
- v135(v136, v137);
- if not v135 then
- break;
- end;
- v137 = v135;
- v136:SetEmojiVisible(v136:PlayerIsOnMyFloor());
- end;
- local v138, v139, v140 = ipairs(v133.appliances);
- while true do
- v138(v139, v140);
- if not v138 then
- break;
- end;
- v140 = v138;
- v139:SetEmojiVisible(v139:PlayerIsOnMyFloor());
- end;
- end;
- end;
- function v3.TeleportToFloor(p65, p66)
- if p66 < 1 or #p65.floors < p66 then
- return;
- end;
- u1.Audio.Play(5226914888, l__LocalPlayer__2.PlayerGui);
- if p65.playerFloorLevel ~= p66 then
- p65.playerFloorLevel = p66;
- p65:UpdateAnimationOptimization();
- p65:UpdateEmojiVisibility();
- end;
- local v141 = p65.floors[p66];
- game.Players.LocalPlayer.Character:SetPrimaryPartCFrame(CFrame.new(v141:WorldPositionFromVoxel(v141.floorTransitionXVoxel, 0, v141.floorTransitionZVoxel) + Vector3.new(0, 4, 0)));
- if p65 == u1.Variables.MyBakery then
- u1.Signal.Fire("PlayerFloorLevelChanged", p66);
- local v142, v143, v144 = ipairs(p65.floors[p65.playerFloorLevel].customers);
- while true do
- v142(v143, v144);
- if not v142 then
- break;
- end;
- v144 = v142;
- v143:DisplayMyClothing(false);
- end;
- local v145, v146, v147 = ipairs(v141.customers);
- while true do
- v145(v146, v147);
- if not v145 then
- break;
- end;
- v147 = v145;
- v146:DisplayMyClothing(true);
- end;
- end;
- end;
- function v3.InitNPCs(p67)
- local v148, v149, v150 = ipairs(p67.floors);
- while true do
- v148(v149, v150);
- if not v148 then
- break;
- end;
- local v151, v152, v153 = ipairs(v149.cooks);
- while true do
- v151(v152, v153);
- if not v151 then
- break;
- end;
- v153 = v151;
- v152:StartActionLoop();
- end;
- local v154, v155, v156 = ipairs(v149.waiters);
- while true do
- v154(v155, v156);
- if not v154 then
- break;
- end;
- v156 = v154;
- v155:StartActionLoop();
- end;
- end;
- end;
- function v3.SeatQueuedCustomerGroup(p68, p69, p70)
- if not p68.isOpen then
- p68.customerQueue = {};
- return;
- end;
- local v157 = nil;
- local v158 = nil;
- local v159, v160, v161 = ipairs(p68.customerQueue);
- while true do
- v159(v160, v161);
- if not v159 then
- break;
- end;
- local v162, v163, v164 = ipairs(v160);
- while true do
- v162(v163, v164);
- if not v162 then
- break;
- end;
- v164 = v162;
- if v163 == p69 then
- v157 = v160;
- v158 = v159;
- break;
- end;
- end;
- if v157 then
- break;
- end;
- end;
- if not v157 then
- u1.Print("CRITICAL: Queue group not found.: " .. p69.UID, true);
- return;
- end;
- table.remove(p68.customerQueue, v158);
- local v165, v166, v167 = ipairs(p68.customerQueue);
- while true do
- v165(v166, v167);
- if not v165 then
- break;
- end;
- v167 = v165;
- local v168, v169, v170 = ipairs(v166);
- while true do
- v168(v169, v170);
- if not v168 then
- break;
- end;
- v170 = v168;
- v169.stateData.queuePosition = v165;
- end;
- end;
- local v171, v172, v173 = ipairs(v157);
- while true do
- v171(v172, v173);
- if not v171 then
- break;
- end;
- v173 = v171;
- v172:GoToTargetChair();
- end;
- end;
- function v3.UpdateCustomerQueuePositioning(p71)
- local v174 = p71.floors[1];
- if #p71.customerQueue <= 1 then
- return;
- end;
- local v175, v176, v177 = ipairs(p71.customerQueue);
- while true do
- v175(v176, v177);
- if not v175 then
- break;
- end;
- v177 = v175;
- local v178, v179, v180 = ipairs(v176);
- while true do
- v178(v179, v180);
- if not v178 then
- break;
- end;
- v180 = v178;
- local v181, v182, v183 = p71:GetCustomerQueueVoxel(v178, v175, #v176);
- v179:WalkToPointInQueue(v181, v182, v183, function()
- if not p71.isOpen then
- v179:ForcedToLeave();
- return;
- end;
- v179:SetCustomerState("WaitingForSeat");
- end);
- end;
- end;
- end;
- function v3.GetCustomerQueueVoxel(p72, p73, p74, p75)
- if p75 and p75 >= 4 then
- p73 = p73 - 1;
- end;
- if p72.floors[1].isBiggerPlot then
- local v184 = 16;
- else
- v184 = 14;
- end;
- if p72.baseOrientation == 0 then
- return v184 / 2 - 1 + p73, 0, #p72.customerQueue - p74 + 1;
- end;
- if p72.baseOrientation == 90 then
- return #p72.customerQueue - p74 + 1, 0, v184 / 2 + 2 - p73;
- end;
- if p72.baseOrientation == 180 then
- return v184 / 2 + 2 - p73, 0, v184 - #p72.customerQueue + p74;
- end;
- return v184 - #p72.customerQueue + p74, 0, v184 / 2 + 2 - p73;
- end;
- function v3.GetCustomerStartVoxel(p76, p77, p78)
- if p78 and p78 >= 4 then
- p77 = p77 - 1;
- end;
- if p76.floors[1].isBiggerPlot then
- local v185 = 16;
- else
- v185 = 14;
- end;
- if p76.baseOrientation == 0 then
- return v185 / 2 - 1 + p77, 0, 1;
- end;
- if p76.baseOrientation == 90 then
- return 1, 0, v185 - (v185 / 2 - 1 + p77) + 1;
- end;
- if math.abs(p76.baseOrientation) == 180 then
- return v185 / 2 + 2 - p77, 0, v185;
- end;
- return v185, 0, v185 - (v185 / 2 - 1 + p77) + 1;
- end;
- local u8 = Random.new();
- function v3.AddCustomersToQueueIfNecessary(p79, p80, p81)
- local function v186(p82, p83)
- if p82.state ~= "WaitingForSeat" or p82.stateData.busyWalking then
- if not p83 then
- u1.Audio.Play(5074110087, l__LocalPlayer__2.PlayerGui);
- end;
- return;
- end;
- p82:StopGroupEmoji();
- p82:CleanupGroupInteract();
- p79:SeatQueuedCustomerGroup(p82);
- p79:UpdateCustomerQueuePositioning();
- if not p83 then
- u1.Audio.Play(5074101610, l__LocalPlayer__2.PlayerGui);
- end;
- end;
- if #p79.customerQueue >= 4 then
- return 0;
- end;
- local v187 = p79.floors[1];
- local v188 = nil;
- local v189 = nil;
- local v190, v191, v192 = ipairs((u1.Functions.RandomIndices(u1.Variables.MyBakery.floors)));
- while true do
- v190(v191, v192);
- if not v190 then
- break;
- end;
- v192 = v190;
- local v193, v194 = p79.floors[v191]:GetAvailableSeatGroupings();
- v188 = v193;
- v189 = v194;
- if v188 and v189 then
- break;
- end;
- end;
- if not v188 or not v189 then
- if p80 then
- local v195 = false;
- local v196, v197, v198 = ipairs(p79.floors);
- while true do
- v196(v197, v198);
- if not v196 then
- break;
- end;
- local v199, v200, v201 = ipairs(v197.customers);
- while true do
- v199(v200, v201);
- if not v199 then
- break;
- end;
- v201 = v199;
- if v200.state ~= "ReadyToExit" then
- v200:ForcedToLeave();
- v195 = true;
- break;
- end;
- end;
- if v195 then
- break;
- end;
- end;
- end;
- return 0;
- end;
- local v202 = {};
- local v203 = false;
- local v204 = {};
- local v205 = {};
- local v206 = {};
- local v207 = {};
- local v208 = {};
- local v209 = {};
- local v210 = {};
- local v211 = {};
- local v212 = {};
- local v213 = {};
- local v214 = false;
- local v215, v216, v217 = pairs(v189);
- while true do
- local v218, v219 = v215(v216, v217);
- if not v218 then
- break;
- end;
- local v220 = false;
- local v221 = false;
- local v222 = false;
- local v223 = false;
- local v224 = false;
- local v225 = false;
- local v226 = false;
- local v227 = false;
- local v228, v229, v230 = ipairs(p79.floors[v219.floorLevel]:GetEntitiesFromClassAndSubClass("Furniture", "ChristmasTree"));
- while true do
- v228(v229, v230);
- if not v228 then
- break;
- end;
- v230 = v228;
- if math.sqrt(math.pow(v229.xVoxel - v219.xVoxel, 2) + math.pow(v229.zVoxel - v219.zVoxel, 2)) < 5.75685424949238 then
- v212[v218] = true;
- break;
- end;
- end;
- local v231 = nil;
- if v219.ID == "43" and v188.ID == "44" then
- v220 = true;
- v231 = v219.UID;
- elseif v219.ID == "43" then
- v220 = u8:NextNumber() < 0.25;
- v231 = v219.UID;
- elseif v188.ID == "44" then
- v220 = u8:NextNumber() < 0.1;
- v231 = v188.UID;
- end;
- if v220 then
- p81[v218].ID = "13";
- v204[v218] = v231;
- end;
- if not v220 then
- if v219.ID == "98" and v188.ID == "99" then
- v221 = true;
- v231 = v219.UID;
- elseif v219.ID == "98" then
- v221 = u8:NextNumber() < 0.25;
- v231 = v219.UID;
- elseif v188.ID == "99" then
- v221 = u8:NextNumber() < 0.1;
- v231 = v188.UID;
- end;
- if v221 then
- if math.random() < 0.005 then
- p81[v218].ID = "25";
- v207[v218] = v231;
- else
- p81[v218].ID = "26";
- v208[v218] = v231;
- end;
- end;
- end;
- if not v220 and not v221 then
- if v219.ID == "74" and v188.ID == "75" then
- v222 = u8:NextNumber() < 0.2;
- v231 = v219.UID;
- elseif v219.ID == "74" then
- v222 = u8:NextNumber() < 0.1;
- v231 = v219.UID;
- elseif v188.ID == "75" then
- v222 = u8:NextNumber() < 0.05;
- v231 = v188.UID;
- end;
- if v222 then
- p81[v218].ID = "21";
- v205[v218] = v231;
- end;
- end;
- if not v220 and not v222 and not v221 then
- if v219.ID == "84" and v188.ID == "85" then
- v223 = u8:NextNumber() < 0.25;
- v231 = v219.UID;
- elseif v219.ID == "84" then
- v223 = u8:NextNumber() < 0.1;
- v231 = v219.UID;
- elseif v188.ID == "85" then
- v223 = u8:NextNumber() < 0.05;
- v231 = v188.UID;
- end;
- if v223 then
- p81[v218].ID = "22";
- v206[v218] = v231;
- end;
- end;
- if not v220 and not v222 and not v221 and not v223 and v219.ID == "108" and u8:NextNumber() < 0.2 then
- v224 = true;
- v231 = v219.UID;
- p81[v218].ID = "27";
- v209[v218] = v231;
- end;
- if not v220 and not v222 and not v221 and not v223 and not v224 then
- if v219.ID == "110" and v188.ID == "111" then
- v225 = u8:NextNumber() < 0.25;
- v231 = v219.UID;
- elseif v219.ID == "110" then
- v225 = u8:NextNumber() < 0.1;
- v231 = v219.UID;
- elseif v188.ID == "111" then
- v225 = u8:NextNumber() < 0.05;
- v231 = v188.UID;
- end;
- if v225 then
- p81[v218].ID = "28";
- v210[v218] = v231;
- end;
- end;
- if not v220 and not v222 and not v221 and not v223 and not v224 and not v225 then
- if v219.ID == "118" and v188.ID == "119" then
- v226 = u8:NextNumber() < 0.2;
- v231 = v219.UID;
- elseif v219.ID == "118" then
- v226 = u8:NextNumber() < 0.1;
- v231 = v219.UID;
- elseif v188.ID == "119" then
- v226 = u8:NextNumber() < 0.05;
- v231 = v188.UID;
- end;
- if v226 then
- p81[v218].ID = "29";
- v211[v218] = v231;
- end;
- end;
- if not v220 and not v222 and not v221 and not v223 and not v224 and not v225 and not v226 then
- if v219.ID == "120" and v188.ID == "121" then
- v227 = u8:NextNumber() < 0.05;
- v231 = v219.UID;
- elseif v219.ID == "120" then
- v227 = u8:NextNumber() < 0.01;
- v231 = v219.UID;
- elseif v188.ID == "121" then
- v227 = u8:NextNumber() < 0.01;
- v231 = v188.UID;
- end;
- if v227 then
- p81[v218].ID = "30";
- v213[v218] = v231;
- end;
- end;
- local v232, v233, v234 = p79:GetCustomerStartVoxel(v218, #v189);
- local v235, v236, v237 = p79:GetCustomerQueueVoxel(v218, -5, #v189);
- local v238 = u1.Customer.CreateRandomCustomer(p81[v218], v232, v233, v234);
- local v239 = v187:WorldPositionFromVoxel(v232, v233, v234);
- local v240 = v187:WorldPositionFromVoxel(v235, v236, v237);
- v238.stateData.seatUID = v219.UID;
- v238.stateData.tableUID = v188.UID;
- v238.stateData.queuePosition = #p79.customerQueue + 1;
- v238.isNearTree = v212[v218] ~= nil;
- v238:SetVoxelPosition(p79:GetCustomerStartVoxel(v218, #v189));
- if v238:BelongsToMyBakery() then
- if #v189 % 2 == 0 then
- v238.model:SetPrimaryPartCFrame(CFrame.new(v239 + Vector3.new(0, 2, 0), v240));
- elseif #v189 == 1 then
- v238.model:SetPrimaryPartCFrame(CFrame.new((CFrame.new(v239 + Vector3.new(0, 2, 0)) * CFrame.Angles(0, p79.baseAngle, 0) * CFrame.new(2, 0, 0)).p, (CFrame.new(v240) * CFrame.Angles(0, p79.baseAngle, 0) * CFrame.new(2, 0, 0)).p));
- elseif #v189 == 3 then
- v238.model:SetPrimaryPartCFrame(CFrame.new((CFrame.new(v239 + Vector3.new(0, 2, 0)) * CFrame.Angles(0, p79.baseAngle, 0) * CFrame.new(-2, 0, 0)).p, (CFrame.new(v240) * CFrame.Angles(0, p79.baseAngle, 0) * CFrame.new(-2, 0, 0)).p));
- end;
- end;
- if u1.PlayerSettings.GetSetting("Notifications") == "Enabled" then
- if v238.ID == "25" and not v203 then
- v203 = true;
- u1.SFX.Play(5839736886, l__LocalPlayer__2.PlayerGui, nil, 1);
- u1.Alert.SilentMessage("The <t=black><c=yellow>Headless Horseman<t=/><c=/> has entered your restaurant!");
- end;
- if v238.ID == "29" and not v203 then
- v203 = true;
- u1.SFX.Play(10244075016, l__LocalPlayer__2.PlayerGui);
- u1.Alert.SilentMessage("A <t=black><c=yellow>Lifeguard<t=/><c=/> has entered your restaurant!");
- end;
- if v238.ID == "27" and not v203 then
- v203 = true;
- u1.SFX.Play(6106142958, l__LocalPlayer__2.PlayerGui);
- u1.Alert.SilentMessage("<t=black><c=yellow>Santa<t=/><c=/> has entered your restaurant!");
- end;
- if v238.ID == "13" and not v203 then
- v203 = true;
- u1.SFX.Play(5174014731, l__LocalPlayer__2.PlayerGui);
- u1.Alert.SilentMessage("A <t=black><c=yellow>VIP Customer<t=/><c=/> has entered your restaurant!");
- end;
- if v238.ID == "20" and not v203 then
- v203 = true;
- u1.SFX.Play(5278932246, l__LocalPlayer__2.PlayerGui);
- u1.Alert.SilentMessage("A <t=black><c=yellow>Celebrity<t=/><c=/> has entered your restaurant!");
- end;
- if v238.ID == "21" and not v203 then
- v203 = true;
- u1.SFX.Play(5601560215, l__LocalPlayer__2.PlayerGui, nil, 0.25);
- u1.Alert.SilentMessage("A <t=black><c=yellow>Pirate<t=/><c=/> has entered your restaurant!");
- end;
- if v238.ID == "22" and not v203 then
- v203 = true;
- u1.SFX.Play(5625433365, l__LocalPlayer__2.PlayerGui, nil, 0.25);
- u1.Alert.SilentMessage("A <t=black><c=yellow>Youtuber<t=/><c=/> has entered your restaurant!");
- end;
- if v238.ID == "26" and not v203 then
- v203 = true;
- u1.SFX.Play(5839737683, l__LocalPlayer__2.PlayerGui, nil, 0.25);
- u1.Alert.SilentMessage("A <t=black><c=yellow>Haunted VIP Customer<t=/><c=/> has entered your restaurant!");
- end;
- if v238.ID == "30" and not v203 then
- v203 = false;
- u1.SFX.Play(12732648984, l__LocalPlayer__2.PlayerGui, nil, 0.25);
- u1.Alert.SilentMessage("An <t=black><c=yellow>Alien<t=/><c=/> has entered your restaurant!");
- end;
- end;
- if v238.ID == "14" or v238.ID == "15" then
- v214 = true;
- end;
- v238.model.Parent = v238.cachedParent;
- v238:FadeTransparency(v238:GetMyTransparency());
- u1.Replication.SendEvent("CustomerCreated", v238:ToUIDData());
- if p79.isTutorial then
- table.insert(p79.tutorial.firstCustomerWave, v238);
- p79.tutorial.hasAllowedFirstWaveOfCustomers = true;
- end;
- v219:SetIsOccupied(v238);
- v188:AddCustomerAtTable(v238);
- v238:Emoji("WaitingForSeat", true);
- if u1.Gamepasses.Owns(151243806) then
- task.spawn(function()
- task.wait(0.5);
- v186(v238, true);
- end);
- else
- v238:Interact(function()
- v186(v238);
- end);
- end;
- if v238.ID == "20" then
- u1.Variables.MyBakery.activeCelebrity = true;
- end;
- table.insert(v202, v238);
- end;
- local v241, v242, v243 = ipairs(v202);
- while true do
- v241(v242, v243);
- if not v241 then
- break;
- end;
- v243 = v241;
- v242.stateData.queueGroup = {};
- local v244, v245, v246 = ipairs(v202);
- while true do
- v244(v245, v246);
- if not v244 then
- break;
- end;
- v246 = v244;
- if v242 ~= v245 then
- table.insert(v242.stateData.queueGroup, v245);
- end;
- end;
- end;
- table.insert(p79.customerQueue, v202);
- if not v214 then
- p79:UpdateCustomerQueuePositioning();
- else
- v186(v202[1], true);
- end;
- return #v189, v204, v205, v206, v207, v208, v209, v210, v212, v211, v213;
- end;
- function v3.RunDay(p84)
- u1.Network.Fired("BakeryExperienceUpdated"):Connect(function(p85)
- p84.experience = p85;
- end);
- end;
- u1.Network.Fired("SendCustomerUIDBatchToClient"):Connect(function(p86, p87)
- local function v247(p88, ...)
- u1.Network.Fire("SendCustomerUIDBatchToServer", p86, p88, ...);
- end;
- local l__MyBakery__248 = u1.Variables.MyBakery;
- if not l__MyBakery__248 or not l__MyBakery__248.isOpen then
- return v247(0);
- end;
- if l__MyBakery__248.isTutorial and not l__MyBakery__248.tutorial.readyForFirstWaveOfCustomers then
- v247(0);
- return;
- end;
- if l__MyBakery__248.isTutorial and l__MyBakery__248.tutorial.hasAllowedFirstWaveOfCustomers then
- v247(0);
- return;
- end;
- local v249, v250, v251, v252, v253, v254, v255, v256, v257, v258, v259 = l__MyBakery__248:AddCustomersToQueueIfNecessary(false, p87);
- v247(v249, v250, v251, v252, v253, v254, v255, v256, v257, v258, v259);
- end);
- function v3.CleanupReplication(p89)
- local v260, v261, v262 = ipairs(p89.floors);
- while true do
- v260(v261, v262);
- if not v260 then
- break;
- end;
- v262 = v260;
- if v261.transitionPad then
- v261.transitionPad:Destroy();
- end;
- end;
- local v263 = 0;
- local v264, v265, v266 = pairs(p89.Entities);
- while true do
- local v267, v268 = v264(v265, v266);
- if not v267 then
- break;
- end;
- if v268.className == "Customer" and v268.stateData and v268.stateData.foodOrder then
- if v268.stateData.foodOrder.model then
- v268.stateData.foodOrder.model:Destroy();
- end;
- if v268.stateData.foodOrder.moneyModel then
- v268.stateData.foodOrder.moneyModel:Destroy();
- end;
- end;
- v268:Cleanup();
- v263 = v263 + 1;
- if v263 % 200 == 0 then
- wait();
- end;
- end;
- end;
- function v3.DestroyBakery(p90)
- p90:CleanupReplication();
- p90.container:Destroy();
- v3.AllBakeries[p90.UID] = nil;
- end;
- u1.Network.Fired("GetBakeryOpenStatusFromPlayer"):Connect(function()
- local l__MyBakery__269 = u1.Variables.MyBakery;
- if not l__MyBakery__269 then
- return;
- end;
- wait(0.5);
- l__MyBakery__269:SetOpenStatus(l__MyBakery__269.isOpen);
- end);
- return v3;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement