Combind diplomacy rank into one
This commit is contained in:
		| @@ -507,7 +507,7 @@ if factions_config.faction_diplomacy == true then | |||||||
| 		description = "Send an alliance request to another faction.", | 		description = "Send an alliance request to another faction.", | ||||||
| 		global_privileges = def_global_privileges, | 		global_privileges = def_global_privileges, | ||||||
| 		format = {"string"}, | 		format = {"string"}, | ||||||
| 		faction_permissions = {"alliance"}, | 		faction_permissions = {"diplomacy"}, | ||||||
| 		on_success = function(player, faction, pos, parcelpos, args) | 		on_success = function(player, faction, pos, parcelpos, args) | ||||||
| 			if factions.factions[args.strings[1]] then | 			if factions.factions[args.strings[1]] then | ||||||
| 				if not factions.factions[args.strings[1]].request_inbox[faction.name] then | 				if not factions.factions[args.strings[1]].request_inbox[faction.name] then | ||||||
| @@ -544,7 +544,7 @@ if factions_config.faction_diplomacy == true then | |||||||
| 		description = "Send neutral to another faction.", | 		description = "Send neutral to another faction.", | ||||||
| 		global_privileges = def_global_privileges, | 		global_privileges = def_global_privileges, | ||||||
| 		format = {"string"}, | 		format = {"string"}, | ||||||
| 		faction_permissions = {"neutral"}, | 		faction_permissions = {"diplomacy"}, | ||||||
| 		on_success = function(player, faction, pos, parcelpos, args) | 		on_success = function(player, faction, pos, parcelpos, args) | ||||||
| 			if factions.factions[args.strings[1]] then | 			if factions.factions[args.strings[1]] then | ||||||
| 				if not factions.factions[args.strings[1]].request_inbox[faction.name] then | 				if not factions.factions[args.strings[1]].request_inbox[faction.name] then | ||||||
| @@ -581,7 +581,7 @@ if factions_config.faction_diplomacy == true then | |||||||
| 		description = "accept an request from another faction.", | 		description = "accept an request from another faction.", | ||||||
| 		global_privileges = def_global_privileges, | 		global_privileges = def_global_privileges, | ||||||
| 		format = {"string"}, | 		format = {"string"}, | ||||||
| 		faction_permissions = {"accept_treaty"}, | 		faction_permissions = {"diplomacy"}, | ||||||
| 		on_success = function(player, faction, pos, parcelpos, args) | 		on_success = function(player, faction, pos, parcelpos, args) | ||||||
| 			if faction.request_inbox[args.strings[1]] then | 			if faction.request_inbox[args.strings[1]] then | ||||||
| 				if args.strings[1] == faction.name then | 				if args.strings[1] == faction.name then | ||||||
| @@ -609,7 +609,7 @@ if factions_config.faction_diplomacy == true then | |||||||
| 		description = "refuse an request from another faction.", | 		description = "refuse an request from another faction.", | ||||||
| 		global_privileges = def_global_privileges, | 		global_privileges = def_global_privileges, | ||||||
| 		format = {"string"}, | 		format = {"string"}, | ||||||
| 		faction_permissions = {"refuse_treaty"}, | 		faction_permissions = {"diplomacy"}, | ||||||
| 		on_success = function(player, faction, pos, parcelpos, args) | 		on_success = function(player, faction, pos, parcelpos, args) | ||||||
| 			if faction.request_inbox[args.strings[1]] then | 			if faction.request_inbox[args.strings[1]] then | ||||||
| 				if args.strings[1] == faction.name then | 				if args.strings[1] == faction.name then | ||||||
| @@ -630,7 +630,7 @@ if factions_config.faction_diplomacy == true then | |||||||
| 		description = "Delcare war on a faction.", | 		description = "Delcare war on a faction.", | ||||||
| 		global_privileges = def_global_privileges, | 		global_privileges = def_global_privileges, | ||||||
| 		format = {"string"}, | 		format = {"string"}, | ||||||
| 		faction_permissions = {"declare_war"}, | 		faction_permissions = {"diplomacy"}, | ||||||
| 		on_success = function(player, faction, pos, parcelpos, args) | 		on_success = function(player, faction, pos, parcelpos, args) | ||||||
| 			if not faction.enemies[args.strings[1]] then | 			if not faction.enemies[args.strings[1]] then | ||||||
| 				if args.strings[1] == faction.name then | 				if args.strings[1] == faction.name then | ||||||
| @@ -658,7 +658,7 @@ if factions_config.faction_diplomacy == true then | |||||||
| 		description = "Break an alliance.", | 		description = "Break an alliance.", | ||||||
| 		global_privileges = def_global_privileges, | 		global_privileges = def_global_privileges, | ||||||
| 		format = {"string"}, | 		format = {"string"}, | ||||||
| 		faction_permissions = {"alliance"}, | 		faction_permissions = {"diplomacy"}, | ||||||
| 		on_success = function(player, faction, pos, parcelpos, args) | 		on_success = function(player, faction, pos, parcelpos, args) | ||||||
| 			if faction.allies[args.strings[1]] then | 			if faction.allies[args.strings[1]] then | ||||||
| 				if args.strings[1] == faction.name then | 				if args.strings[1] == faction.name then | ||||||
| @@ -679,7 +679,7 @@ if factions_config.faction_diplomacy == true then | |||||||
| 	factions.register_command("inbox", { | 	factions.register_command("inbox", { | ||||||
| 		description = "Check your diplomacy request inbox.", | 		description = "Check your diplomacy request inbox.", | ||||||
| 		global_privileges = def_global_privileges, | 		global_privileges = def_global_privileges, | ||||||
| 		faction_permissions = {"accept_treaty","refuse_treaty","alliance","neutral","declare_war"}, | 		faction_permissions = {"diplomacy"}, | ||||||
| 		on_success = function(player, faction, pos, parcelpos, args) | 		on_success = function(player, faction, pos, parcelpos, args) | ||||||
| 			local empty = true | 			local empty = true | ||||||
| 			for i,k in pairs(faction.request_inbox) do | 			for i,k in pairs(faction.request_inbox) do | ||||||
|   | |||||||
							
								
								
									
										43
									
								
								factions.lua
									
									
									
									
									
								
							
							
						
						
									
										43
									
								
								factions.lua
									
									
									
									
									
								
							| @@ -62,11 +62,7 @@ starting_ranks = {["leader"] = {"build","door","container","name","description", | |||||||
| -- flags: manage faction's flags | -- flags: manage faction's flags | ||||||
| -- ranks: create, edit, and delete ranks | -- ranks: create, edit, and delete ranks | ||||||
| -- promote: set a player's rank | -- promote: set a player's rank | ||||||
| -- declare_war: be able to declare war with another faction | -- diplomacy: be able to control the faction's diplomacy | ||||||
| -- neutral: be able to send a neutral request to another faction |  | ||||||
| -- alliance: be able to send a alliance request to another faction and break alliance treaties too |  | ||||||
| -- accept_treaty: be able to accept a treaty request from another faction |  | ||||||
| -- refuse_treaty: be able to refuse a treaty request from another faction |  | ||||||
|  |  | ||||||
| factions.permissions = {"build","pain_build","door","container","name","description","motd","invite","kick" | factions.permissions = {"build","pain_build","door","container","name","description","motd","invite","kick" | ||||||
| 						,"player_title","spawn","with_draw","territory","claim","access","disband","flags","ranks","promote"} | 						,"player_title","spawn","with_draw","territory","claim","access","disband","flags","ranks","promote"} | ||||||
| @@ -79,28 +75,16 @@ factions.permissions_desc = {"dig and place nodes","dig and place nodes but take | |||||||
| -- monsters: can monsters spawn on your land? | -- monsters: can monsters spawn on your land? | ||||||
| -- tax_kick: will players be kicked for not paying tax? | -- tax_kick: will players be kicked for not paying tax? | ||||||
| -- animals: can animals spawn on your land? | -- animals: can animals spawn on your land? | ||||||
| factions.flags = {"open","monsters","tax_kick","animals"} | factions.flags = {"open", "monsters", "tax_kick", "animals"} | ||||||
| factions.flags_desc = {"can the faction be joined without an invite?","can monsters spawn on your land?(unused)","will players be kicked for not paying tax?(unused)","can animals spawn on your land?(unused)"} | factions.flags_desc = {"can the faction be joined without an invite?","can monsters spawn on your land?(unused)","will players be kicked for not paying tax?(unused)","can animals spawn on your land?(unused)"} | ||||||
|  |  | ||||||
| if factions_config.faction_diplomacy == true then | if factions_config.faction_diplomacy == true then | ||||||
| 	table.insert(factions.permissions,"declare_war") | 	table.insert(factions.permissions,"diplomacy") | ||||||
| 	table.insert(factions.permissions,"neutral") |  | ||||||
| 	table.insert(factions.permissions,"alliance") |  | ||||||
| 	table.insert(factions.permissions,"accept_treaty") |  | ||||||
| 	table.insert(factions.permissions,"refuse_treaty") |  | ||||||
| 	 | 	 | ||||||
| 	table.insert(factions.permissions_desc,"be able to declare war with another faction") | 	table.insert(factions.permissions_desc,"be able to control the faction's diplomacy") | ||||||
| 	table.insert(factions.permissions_desc,"be able to send a neutral request to another faction") |  | ||||||
| 	table.insert(factions.permissions_desc,"be able to send a alliance request to another faction and break alliance treaties too") |  | ||||||
| 	table.insert(factions.permissions_desc,"be able to accept a treaty request from another faction") |  | ||||||
| 	table.insert(factions.permissions_desc,"be able to refuse a treaty request from another faction") |  | ||||||
| 	 | 	 | ||||||
| 	local lt = starting_ranks["leader"] | 	local lt = starting_ranks["leader"] | ||||||
| 	table.insert(lt,"declare_war") | 	table.insert(lt,"diplomacy") | ||||||
| 	table.insert(lt,"neutral") |  | ||||||
| 	table.insert(lt,"alliance") |  | ||||||
| 	table.insert(lt,"accept_treaty") |  | ||||||
| 	table.insert(lt,"refuse_treaty") |  | ||||||
| 	starting_ranks["leader"] = lt | 	starting_ranks["leader"] = lt | ||||||
| end | end | ||||||
|  |  | ||||||
| @@ -1184,7 +1168,6 @@ function factions.convert(filename) | |||||||
| 	file:close() | 	file:close() | ||||||
| 	 | 	 | ||||||
|     local data = minetest.deserialize(raw_data) |     local data = minetest.deserialize(raw_data) | ||||||
| 	local old_permissions = {"disband", "claim", "playerslist", "build", "description", "promote", "diplomacy"} |  | ||||||
| 	 | 	 | ||||||
|     for facname,faction in pairs(data) do |     for facname,faction in pairs(data) do | ||||||
|         local newfac = factions.new_faction(facname,true) |         local newfac = factions.new_faction(facname,true) | ||||||
| @@ -1207,22 +1190,6 @@ function factions.convert(filename) | |||||||
| 		else | 		else | ||||||
| 			newfac.rankless = false | 			newfac.rankless = false | ||||||
| 		end | 		end | ||||||
| 		for rank,perm in pairs(faction.ranks) do |  | ||||||
| 			for index,value in pairs(perm) do |  | ||||||
| 				if value == "playerslist" then |  | ||||||
| 					table.remove(faction.ranks[rank],index) |  | ||||||
| 					table.insert(faction.ranks[rank],"kick") |  | ||||||
| 					table.insert(faction.ranks[rank],"invite") |  | ||||||
| 				elseif value == "diplomacy" then |  | ||||||
| 					table.remove(faction.ranks[rank],index) |  | ||||||
| 					table.insert(faction.ranks[rank],"declare_war") |  | ||||||
| 					table.insert(faction.ranks[rank],"neutral") |  | ||||||
| 					table.insert(faction.ranks[rank],"alliance") |  | ||||||
| 					table.insert(faction.ranks[rank],"accept_treaty") |  | ||||||
| 					table.insert(faction.ranks[rank],"refuse_treaty") |  | ||||||
| 				end |  | ||||||
| 			end |  | ||||||
| 		end |  | ||||||
| 		factions.start_diplomacy(facname,newfac) | 		factions.start_diplomacy(facname,newfac) | ||||||
| 		newfac:check_power() | 		newfac:check_power() | ||||||
|     end |     end | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user