HM Lv40 to Unlock UM

05/07/2014 12:37 MC Flip#1
For a change it is me to ask a question.

I'm messing around with something and I want to disable automatic UM unlock and set it to require a lv40 HM to unlock UM as it is supposed to be.

Unfortunately, Omega Files come with UM unlocked.

I've tried to modify this script:
Code:
CREATE Proc usp_Read_User_MaxGrow_R

@ServerID tinyint,
@UserUID int

AS

SET NOCOUNT ON

IF NOT EXISTS(SELECT GROW FROM CHARS WHERE ServerID=@ServerID AND UserUID=@UserUID AND GROW <= 3 )
BEGIN
UPDATE UserMaxGrow SET MaxGrow = 3 WHERE ServerID=@ServerID AND UserUID=@UserUID AND Country <= 1
END

IF EXISTS(SELECT GROW FROM CHARS WHERE ServerID=@ServerID AND UserUID=@UserUID AND GROW = 3 AND LEVEL >= 0)
BEGIN
UPDATE UserMaxGrow SET MaxGrow = 3 WHERE ServerID=@ServerID AND UserUID=@UserUID
END

IF EXISTS(SELECT GROW FROM CHARS WHERE ServerID=@ServerID AND UserUID=@UserUID AND GROW = 3 AND LEVEL >= 0)
BEGIN
UPDATE UserMaxGrow SET MaxGrow = 3 WHERE ServerID=@ServerID AND UserUID=@UserUID
END

SELECT Country,MaxGrow FROM UserMaxGrow WHERE ServerID=@ServerID AND UserUID=@UserUID

SET NOCOUNT OFF
GO
Without success.
05/07/2014 13:25 nubness#2
You can try this:
Code:
USE [PS_GameData]
GO
/****** Object:  StoredProcedure [dbo].[usp_Read_User_MaxGrow_R]    Script Date: 05/07/2014 14:21:07 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER OFF
GO


ALTER Proc [dbo].[usp_Read_User_MaxGrow_R]

@ServerID tinyint,
@UserUID int

AS

SET NOCOUNT ON

IF EXISTS (SELECT CharID FROM Chars WHERE UserUID = @UserUID AND Grow = 2 AND Level >= 40)
OR EXISTS (SELECT CharID FROM Chars WHERE UserUID = @UserUID AND Grow = 3)
	UPDATE UserMaxGrow SET MaxGrow = 3 WHERE UserUID = @UserUID
ELSE UPDATE UserMaxGrow SET MaxGrow = 2 WHERE UserUID = @UserUID

SELECT Country, MaxGrow FROM UserMaxGrow WHERE UserUID=@UserUID

SET NOCOUNT OFF
GO
05/07/2014 16:36 MC Flip#3
It works perfectly, thank you.
I suppose others looking for the same fix will appreciate this topic.
05/08/2014 14:41 Autrux#4
#moved