SA-MP Forums

Go Back   SA-MP Forums > SA-MP Scripting and Plugins > Scripting Help

Reply
 
Thread Tools Display Modes
Old 11/01/2015, 09:58 PM   #1
sas10
Big Clucker
 
Join Date: Dec 2014
Posts: 160
Reputation: 3
Default [Help]Me Please Can Somone SII Change it To y_ini

Hello Every One
guys i Want Help i Want Change SII To y_ini
but i dont know any things about SII
please can somone help me + rep
PHP Code:
#include <a_samp>
#include <zcmd>
#include <SII>
#include <sscanf2>
#include <Streamer>

#define MAX_HOUSES 100//Lets define that we can have the max limit of our houses to 100.
enum HouseInfo//Naming the enum
{
Owner[24],//This will be where it will store the house owner name, in a 24 bit size array.
Owned,//To store if the house is owned or not.
Price,//How much the house will cost.
Float:XPos,//Float X position of the checkpoint
Float:YPos,//Self explanatory.
Float:ZPos,//Self explanatory.
VirtualWorld,//The checkpoints virtual world.
Text3D:HouseLabel//That label where it says "Owned Price..."
}
new 
HInfo[MAX_HOUSES][HouseInfo];//This is the var where we will read the house info.

new HouseCount;//To check how many houses have we created.
new HouseEnter[MAX_HOUSES];//This will be where we will store the house entrance checkpoint
new HouseExit[MAX_HOUSES];//This will be where we will store the house exit checkpoint.
new PlayerInHouseID[MAX_PLAYERS];//To check what house id is the player in.

CMD:createhouse(playerid,params[])
{
if(!
IsPlayerAdmin(playerid)) return SendClientMessage(playerid,-1,"You aren't an admin!");//Check if the player is currently rcon logged in.
new HousePrice,id HouseCount;//Creating the house price for the selected value in the command, and the last house id created.
if(sscanf(params,"i",HousePrice)) return SendClientMessage(playerid,-1,"USAGE: /createhouse <price>");//Checking if the player uses the correct syntax. The parameter "i" in sscanf means integer, also could be used as "d".
new Float:x,Float:y,Float:z;//Creating the floats, to store the player's position.
GetPlayerPos(playerid,x,y,z);//Getting the player's position and storing it
HInfo[id][Price] = HousePrice;//Setting the house price to the selected one.
HInfo[id][Owned] = 0;//Setting the house id owned = 0
HInfo[id][XPos] = x;//Storing the XPos value to the player's x.
HInfo[id][YPos] = y;//Storing the YPos value to the player's y.
HInfo[id][ZPos] = z;//Storing the ZPos value to the player's z.
HInfo[id][VirtualWorld] = GetPlayerVirtualWorld(playerid);
format(HInfo[id][Owner],24,"Nonusablenameforthishouse");//Formating the "Owner" house id value to "Nonusablenameforthishouse".
SendClientMessage(playerid,-1,"House created");
HouseEnter[id] = CreateDynamicCP(x,y,z,1.5,GetPlayerVirtualWorld(playerid));//Creating the checkpoint and storing it in the HouseEnter value.
HouseExit[id] = CreateDynamicCP(443.9237,509.4609,1001.4195,1.5,GetPlayerVirtualWorld(playerid));//Creating the house exit checkpoint and storing it in the HouseExit value.
new file[40],labelstring[100];//Creating the "file", and the labelstring var.
format(file,sizeof(file),"FHouse/Houses/%i.ini",id);//Formating the var to the selected house directory.
INI_Open(file);//Opening the file with SII.
INI_WriteInt("Price",HousePrice);//Writing in the place "Price" the inputted "Price" value.
INI_WriteInt("Owned",0);//Setting to "Owned" = 0 in the ini file.
INI_WriteInt("VirtualWorld",GetPlayerVirtualWorld(playerid));//Writing "VirtualWorld" = GetPlayerVirtualWorld(..);
INI_WriteFloat("XPos",x);//Writing the players pos for the check point position.
INI_WriteFloat("YPos",y);//Self explanatory.
INI_WriteFloat("ZPos",z);//Self explanatory.
INI_WriteString("Owner","Nonusablenameforthishouse");//Writing a string in "Owned" to "Nonusablenameforthishouse"
INI_Save();//Saving file with SII.
INI_Close();//Closing the file with SII.
format(labelstring,sizeof(labelstring),"Owned: No \nPrice: %i",HousePrice);
HInfo[id][HouseLabel] = Create3DTextLabel(labelstring,0xFF0000FF,x,y,z,25.0,GetPlayerVirtualWorld(playerid));
HouseCount++;
return 
1;
}

CMD:buy(playerid,params[])
{
for(new 
0MAX_HOUSES;i++)//Loop threw all houses.
{
if(!
IsPlayerInRangeOfPoint(playerid,8.0,HInfo[i][XPos],HInfo[i][YPos],HInfo[i][ZPos])) continue;//Check if the player is near a house checkpoint
if(GetPlayerMoney(playerid) < HInfo[i][Price]) return SendClientMessage(playerid,-1,"You don't have enough money");//Checking the players money, to see if he has enough to buy the house.
if(HInfo[i][Owned] == 1) return SendClientMessage(playerid,-1,"This house is already owned");//Checking if the house is already owned.
HInfo[i][Owned] = 1;//Setting the house owned var to 1.
new file[60],pName[24],string[100];//Creating the necessary vars.
GetPlayerName(playerid,pName,sizeof(pName));//Retrieving the player's name.
format(HInfo[i][Owner],24,"%s",pName);//Setting the House Owner's var
format(file,sizeof(file),"FHouse/Houses/%i.ini",i);//Formating the house file
INI_Open(file);//Opening the house file
INI_WriteInt("Owned",1);//Setting in the ini file "Owned" to 1
INI_WriteString("Owner",pName);//Setting the "Owner" to the player's name.
INI_Save();//Saving the ini
INI_Close();//Closing the ini
format(string,sizeof(string),"Owned: Yes \nPrice: %i \nOwner: %s",HInfo[i][Price],pName);//Formating the string, so we can update the label of the house
Update3DTextLabelText(HInfo[i][HouseLabel],0xFF0000FF,string);//Updating the label with a red color
GivePlayerMoney(playerid,-HInfo[i][Price]);
return 
1;
}
SendClientMessage(playerid,-1,"You aren't near a house!");
return 
1;
}

CMD:sell(playerid,params[])
{
for(new 
0MAX_HOUSES;i++)//Loop threw all houses.
{
if(!
IsPlayerInRangeOfPoint(playerid,8.0,HInfo[i][XPos],HInfo[i][YPos],HInfo[i][ZPos])) continue;//Check if the player is near a house checkpoint
if(HInfo[i][Owned] == 0) return SendClientMessage(playerid,-1,"This house isn't owned");//Checking if the house is already owned.
new pName[24];
GetPlayerName(playerid,pName,sizeof(pName));//Retrieving the player's name.
if(HInfo[i][Owned] == && strcmp(pName,HInfo[i][Owner]) != 0) return SendClientMessage(playerid,-1,"You aren't the owner of this house!");//Checking if the house is owned but the owners name is different
HInfo[i][Owned] = 0;//Setting the house owned var to 1.
new file[60],string[100];//Creating the necessary vars.
format(HInfo[i][Owner],24,"Nonusablenameforthishouse");//Setting the House Owner's var
format(file,sizeof(file),"FHouse/Houses/%i.ini",i);//Formating the house file
INI_Open(file);//Opening the house file
INI_WriteInt("Owned",0);//Setting in the ini file "Owned" to 0
INI_WriteString("Owner","Nonusablenameforthishouse ");//Setting the "Owner" to the "Nonusablenameforthishouse".
INI_Save();//Saving the ini
INI_Close();//Closing the ini
format(string,sizeof(string),"Owned: No \nPrice: %i \nOwner: None",HInfo[i][Price],pName);//Formating the string, so we can update the label of the house
Update3DTextLabelText(HInfo[i][HouseLabel],0xFF0000FF,string);//Updating the label with a red color
return 1;
}
SendClientMessage(playerid,-1,"You aren't near a house!");
return 
1;
}

public 
OnPlayerEnterDynamicCP(playerid,checkpointid)
{
for(new 
0MAX_HOUSES;i++)//Looping threw all houses.
{
if(
checkpointid == HouseEnter[i])//Checking if the checkpoint id corresponds to one of the house interiors
{
new 
pName[24];//Creating the new var for the players name
GetPlayerName(playerid,pName,24);//Storing the players name
if(HInfo[i][Owned] == && strcmp(HInfo[i][Owner],pName) == 0)//String comparing between the players name and the house owners name, to check if they match.
{
SetPVarInt(playerid,"PlayersInteriorHouse",GetPlayerInterior(playerid));//Storing, so later we can reset it back
SetPVarInt(playerid,"PlayerVirtualWorldHouse",GetPlayerVirtualWorld(playerid));//Storing, so later we can reset it back
SetPlayerInterior(playerid,12);//Setting the players interior.
SetPlayerPos(playerid,446.7281,507.0475,1001.4195) ;//Setting the players position.
SetPlayerVirtualWorld(playerid,HInfo[i][VirtualWorld]);//Preventing players from different houses, finding each other.
PlayerInHouseID[playerid] = i;
}
if(
HInfo[i][Owned] == && strcmp(HInfo[i][Owner],pName) != 0)//Checking if the house is owned but the house owner and the players name don't match.
{
SendClientMessage(playerid,-1,"You don't own this house");
}
if(
HInfo[i][Owned] == 0)//Simply checking if the house isn't owned.
{
SendClientMessage(playerid,-1,"/buy to buy this lovely house");
}
}
if(
checkpointid == HouseExit[i])//Checking if the checkpointid is an House exit
{
SetPlayerPos(playerid,HInfo[i][XPos]+3,HInfo[i][YPos],HInfo[i][ZPos]);//Setting the players position to checkpoint position +3
SetPlayerInterior(playerid,GetPVarInt(playerid,"Pl ayersInteriorHouse"));//Setting the players interior to the one we stored
SetPlayerVirtualWorld(playerid,GetPVarInt(playerid ,"PlayerVirtualWorldHouse"));//Setting the players virtual world to the one we stored.
}
}
return 
1;
}

stock LoadHouses()//Creating the stock function
{
new 
file[60],houseowner[24];//creating the "file" var. And also creating the "houseowner" var so we can store it, when we are reading the house owner ini line.
for(new 0MAX_HOUSES;i++)//Looping threw every house
{
format(file,sizeof(file),"FAdmin/Houses/%i.ini",i);//Opening the house file with the current selected number with "i".
if(!INI_Exist(file)) continue;//Checking if the ini house file exist, if not to stop there.
INI_Open(file);//Opening the house ini
HInfo[i][Price] = INI_ReadInt("Price");//Reading the price.
HInfo[i][Owned] = INI_ReadInt("Owned");//Reading if it's owned.
HInfo[i][XPos] = INI_ReadInt("XPos");//Reading the X float position.
HInfo[i][YPos] = INI_ReadInt("YPos");//Reading the Y float position.
HInfo[i][ZPos] = INI_ReadInt("ZPos");//Reading the Z float position.
HInfo[i][VirtualWorld] = INI_ReadInt("VirtualWorld");//Reading the virtual world.
INI_ReadString(houseowner,"Owner");//Reading the house owner.
format(HInfo[i][Owner],24,"%s",houseowner);//Formating the "Owner" house id value to the red one.
HouseEnter[i] = CreateDynamicCP(HInfo[i][XPos],HInfo[i][YPos],HInfo[i][ZPos],1.5,HInfo[i][VirtualWorld]);//Creating the checkpoint and storing it in the HouseEnter value.
HouseExit[i] = CreateDynamicCP(443.9237,509.4609,1001.4195,1.5,HI nfo[i][VirtualWorld]);//Creating the house exit checkpoint and storing it in the HouseExit value.
new labelstring[100];//Creating the labelstring var.
switch(HInfo[i][Owned])//Using the "switch" method to check if the house is owned
{
case 
0:{format(labelstring,sizeof(labelstring),"Owned: No \nPrice: %i",HInfo[i][Price]);}//If it isnt...
case 1:{format(labelstring,sizeof(labelstring),"Owned: Yes \nPrice: %i \nOwner: %s",HInfo[i][Price],HInfo[i][Owner]);}//If it is...
}
HInfo[i][HouseLabel] = Create3DTextLabel(labelstring,0xFF0000FF,HInfo[i][XPos],HInfo[i][YPos],HInfo[i][ZPos],25.0,HInfo[i][VirtualWorld]);//Creating the label with the formatted string.
HouseCount++;//+ counting the HouseCount var.
INI_Close();//Closing the SII file.
}
return 
1;

Thanks For All
sas10 is offline   Reply With Quote
Old 12/01/2015, 11:16 AM   #2
sas10
Big Clucker
 
Join Date: Dec 2014
Posts: 160
Reputation: 3
Default Re: [Help]Me Please Can Somone SII Change it To y_ini

Bumb
sas10 is offline   Reply With Quote
Old 12/01/2015, 11:44 AM   #3
Ironboy
High-roller
 
Ironboy's Avatar
 
Join Date: Nov 2010
Location: Isle of Man
Posts: 1,942
Reputation: 433
Default Re: [Help]Me Please Can Somone SII Change it To y_ini

http://forum.sa-mp.com/showthread.ph...ighlight=y_ini
__________________
Ironboy is offline   Reply With Quote
Old 12/01/2015, 11:46 AM   #4
sas10
Big Clucker
 
Join Date: Dec 2014
Posts: 160
Reputation: 3
Default Re: [Help]Me Please Can Somone SII Change it To y_ini

Quote:
Originally Posted by Ironboy View Post
i dont know any things About SII To i Can Change it To y_ini

This Script Now SII
i Want it y_ini
Please Somone Help Me +Rep
sas10 is offline   Reply With Quote
Old 13/01/2015, 01:22 PM   #5
sas10
Big Clucker
 
Join Date: Dec 2014
Posts: 160
Reputation: 3
Default Re: [Help]Me Please Can Somone SII Change it To y_ini

Bumb
Help Me To Change House System SII To y_ini
please +rep
sas10 is offline   Reply With Quote
Old 14/01/2015, 07:20 PM   #6
sas10
Big Clucker
 
Join Date: Dec 2014
Posts: 160
Reputation: 3
Default Re: [Help]Me Please Can Somone SII Change it To y_ini

Bumb
Help Please
sas10 is offline   Reply With Quote
Old 15/01/2015, 07:23 PM   #7
sas10
Big Clucker
 
Join Date: Dec 2014
Posts: 160
Reputation: 3
Default Re: [Help]Me Please Can Somone SII Change it To y_ini

Bumb!
sas10 is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Can somone help me ? yaron0600 Scripting Help 4 06/01/2013 04:15 AM
How to change ingame user data y_ini MatZZPL Scripting Help 13 30/08/2012 06:56 PM
Looking for somone to help me skary22 Everything and Nothing 2 18/05/2012 09:31 PM
Change to y_ini ( Help ) Bect Scripting Help 13 13/03/2012 07:33 PM
Change name - y_ini Crazzel Scripting Help 0 12/02/2012 12:24 PM


All times are GMT. The time now is 11:24 AM.


Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.