Jump to content
Rpg²S Forum
  • 0

Sferografia ( Sphere Grid ) Spiegazione.


EmanueleSpeed
 Share

Question

[Risolto]

Salve, sono 2 giorni che smanetto sopra questo script ma non riesco

à configurarlo :(.

Qualcuno mi spiega come creare i nodi e le fascie pls ?

Questo è lo script per la configurazione (dovrei crearli da 0 facendo delle file orizzontali è qualcuni a V ( cosi ' > ' ).

 

module RPG

class Node
attr_reader :id
attr_reader :type
attr_reader :value
attr_reader :x
attr_reader :y
attr_accessor :learnset
#--------------------------------------------------------------------------
def initialize(id,type,value,x,y)
@id = id
@type = type
@value = value
@x = x
@y = y
@learnset = []
end
#--------------------------------------------------------------------------
def morph_into_value(value)
@type = value
if @type == 5 or @type == 6
@value = 20*(2+13*(6-@type))
else
@value = 4
end
if @type == 0
@learnset.clear
end
end
#--------------------------------------
#-----Effects-for-nodes-activations.
#-----Only-skills-need-to-be-actived-here.
#--------------------------------------
def activate(actor_index)
if @learnset[actor_index]
return
end
case @type
when 0
#Empty space
return
when 1
#White Magic
$game_actors[actor_index].learn_skill(@value)
when 2
#Black Magic
$game_actors[actor_index].learn_skill(@value)
when 3
#Skills
$game_actors[actor_index].learn_skill(@value)
when 4
#Specials
$game_actors[actor_index].learn_skill(@value)
when 5..14
#Parameters go here:
# 5 --> HP
# 6 --> MP
# 7 --> Str
# 8 --> Pdef
# 9 --> Int
#10 --> Mdef
#11 --> Dex
#12 --> Agi
#13 --> Eva
#14 --> Atk
else
#Questa è la passosfera
@type = 0
return
end
@learnset[actor_index] = true
end
#--------------------------------------------------------------------------
def icon_name(learnt=false)
text = learnt ? "" : "_off"
case @type
when 0
return "Node_void"
when 1
return "Node_white"+ text
when 2
return "Node_black"+ text
when 3
return "Node_skill"+ text
when 4
return "Node_spec"+ text
when 5
return "Node_hp"+ text
when 6
return "Node_mp"+ text
when 7
return "Node_str"+ text
when 8
return "Node_pdef"+ text
when 9
return "Node_mag"+ text
when 10
return "Node_mdef"+ text
when 11
return "Node_acc"+ text
when 12
return "Node_agi"+ text
when 13
return "Node_dex"+ text
when 14
return "Node_luck"+ text
else
return "Node_lvl"+(@type-14).to_s
end
end

end


class Line
attr_reader :id
attr_reader :node1_id
attr_reader :node2_id
attr_reader :type
attr_reader :value
attr_accessor :unlocked
#--------------------------------------------------------------------------
def initialize(id,node1_id,node2_id,type,value = 0)
@unlocked = []
@id = id
@node1_id = node1_id
@node2_id = node2_id
@type = type
@value = value
end
#--------------------------------------------------------------------------
end
#--------CUSTOMIZATION--GOES---HERE!---------------------------------------

#----Actors that use sphere grid:
#---- id => [color_of_the_grid_lines,starting_node]
#--------modify with care, as shown by the line above
ACTORS = {
1 => [Color.new(108, 255, 255, 255),27],
5 => [Color.new(192,255,128,255), 20],
9 => [Color.new(255,192,255,255),67],
10=> [Color.new(128,128,255,255),81]
}

#---effects of the spheres:
#--- do not modify if you use the items I provided!
#----- Just replace IDs in the following vectors:
ITEM_TO_NODES = {
70=> [5,7,8],
71=> [6,9,10],
72=> [11,12,13],
73=> [1,2,3,4],
74=> [14],
75=> [],
76=> [],
77=> [],
78=> [],
79=> [],
80=> [],
81=> [15],
82=> [16],
83=> [17],
84=> [18],
85=> [0],
86=> [0],
87=> [0],
88=> [0],
89=> [0],
90=> [0],
91=> [0],
92=> [0],
93=> [0],
94=> [0],
95=> [5,6,7,8,9,10,11,12,13,14],
96=> [],
97=> [],
98=> [],
99=> []
}

MORPH_INTO = {
85=> 5,
86=> 6,
87=> 7,
88=> 8,
89=> 9,
90=> 10,
91=> 12,
92=> 13,
93=> 11,
94=> 14,
95=> 0
}

COPYSKILLS = {
75=> [5,6,7,8,9,10,11,12,13,14],
76=> [4],
77=> [3],
78=> [1],
79=> [2],
80=> [1,2,3,4,5,6,7,8,9,10,11,12,13,14]
}

BACKWARD = 96
ALLY = 97
ALLYWISE = 98
OMNI = 99

#end of items effect: if you shift the items,
#---- change IDs, from 70->98
#-------to the new IDs in your project.

#----- SPHERE GRID CUSTOMIZATION:
#------ HERE ARE THE LISTS of nodes and lines.
#------- NODES-> (id,type,value,x,y)
#--------place id 1,2,3.. in order or it will NOT work.
#--------Type: goto line 39
#--------Value: what is added to the corresponding parameter
#--------(in case of skill, the ID of the skill)

NODES = [
Node.new(1,3,57,1000,1000),
Node.new(2,0,0,1000,1050),
Node.new(3,0,0,950,1000),
Node.new(4,17,0,1000,950),
Node.new(5,17,0,1050,1000),
Node.new(6,0,0,1100,1000),
Node.new(7,0,0,1150,1000),
Node.new(8,13,2,1070,1070),
Node.new(9,5,200,930,1070),
Node.new(10,14,1,900,1000),
Node.new(11,17,0,1070,930),
Node.new(12,0,0,1000,900),
Node.new(13,17,0,930,930),
Node.new(14,5,200,895,895),
Node.new(15,17,0,1105,895),
Node.new(16,2,9,1000,850),
Node.new(17,6,40,850,1000),
Node.new(18,5,200,895,1105),
Node.new(19,16,0,1000,1150),
Node.new(20,0,0,1105,1105),
Node.new(21,0,0,1205,1105),
Node.new(22,10,2,1250,1000),
Node.new(23,9,2,1350,1050),
Node.new(24,5,200,1420,1120),
Node.new(25,0,0,1370,1120),
Node.new(26,7,3,1320,1120),
Node.new(27,0,0,1385,1085),
Node.new(28,0,0,1455,1085),
Node.new(29,12,4,1455,1155),
Node.new(30,10,2,1420,1170),
Node.new(31,11,3,1420,1220),
Node.new(32,0,0,1490,1190),
Node.new(33,0,0,1520,1120),
Node.new(34,12,2,1350,1190),
Node.new(35,0,0,1490,1050),
Node.new(36,12,4,1200,1190),
Node.new(37,0,0,1560,1050),
Node.new(38,18,0,1610,980),
Node.new(39,4,54,1610,830),
Node.new(40,18,0,1610,880),
Node.new(41,18,0,1560,830),
Node.new(42,18,0,1610,780),
Node.new(43,0,0,1660,830),
Node.new(44,0,0,1760,830),
Node.new(45,0,0,1610,680),
Node.new(46,7,2,1505,725),
Node.new(47,8,2,1460,830),
Node.new(48,0,0,1505,935),
Node.new(49,17,0,1610,730),
Node.new(50,5,200,1680,760),
Node.new(51,6,40,1540,760),
Node.new(52,14,4,1540,900),
Node.new(53,1,1,1680,900),
Node.new(54,0,0,1715,935),
Node.new(55,17,0,1715,1035),
Node.new(56,14,3,1795,1035),
Node.new(57,0,0,1715,1110),
Node.new(58,6,20,1715,1210),
Node.new(59,5,200,1785,1140),
Node.new(60,7,2,1750,1175),
Node.new(61,16,0,1645,1140),
Node.new(62,8,2,1615,1210),
Node.new(63,0,0,1665,1210),
Node.new(64,0,0,1680,1245),
Node.new(65,0,0,1750,1245),
Node.new(66,0,0,1785,1280),
Node.new(67,0,0,1715,1310),
Node.new(68,12,4,1645,1280),
Node.new(69,0,0,1815,1210),
Node.new(70,0,0,1070,1280),
Node.new(71,0,0,950,1280),
Node.new(72,3,61,880,1350),
Node.new(73,5,200,880,1300),
Node.new(74,0,0,880,1250),
Node.new(75,17,0,845,1315),
Node.new(76,14,1,810,1280),
Node.new(77,0,0,780,1350),
Node.new(78,5,200,810,1420),
Node.new(79,8,3,880,1450),
Node.new(80,0,0,950,1420),
Node.new(81,0,0,915,1385),
Node.new(82,7,2,845,1385),
Node.new(83,17,0,930,1350),
Node.new(84,0,0,980,1350),
Node.new(85,9,1,1150,1350),
Node.new(86,8,4,1150,1420),
Node.new(87,7,1,1185,1385),
Node.new(88,10,1,1220,1420),
Node.new(89,14,1,1220,1350),
Node.new(90,6,20,1370,1500),
Node.new(91,6,20,1300,1430),
Node.new(92,0,0,1370,1400),
Node.new(93,18,0,1440,1430),
Node.new(94,4,55,1560,1430),
Node.new(95,13,2,1370,1320),
Node.new(96,5,200,1370,1450),
Node.new(97,0,0,1320,1500),
Node.new(98,11,2,1270,1500),
Node.new(99,6,20,1150,1500),
Node.new(100,11,2,1030,1500),
]

#----Here come the lines
#----LINES -> (id,node1,node2,type(,value))
#----------place id in order or it will NOT work.
#----------Node order is irrelevant.
#--------Types of lines:
#-------0,1 => draws a L shaped line.
#-------2 => draws the straight line.
#-------3,4 => draws an arc beween the nodes
#-------3 => counterclockwise, 4 => clockwise.
#---------The radius of the arc is value (0 is predefinite)
#--------if radius is too short, draws a straight line instead.

LINES = [
Line.new(1,1,2,2),
Line.new(2,2,3,4,50),
Line.new(3,3,4,4,50),
Line.new(4,4,5,4,50),
Line.new(5,5,6,2),
Line.new(6,6,7,2),
Line.new(7,6,8,4,100),
Line.new(8,8,9,4,100),
Line.new(9,9,10,4,100),
Line.new(10,11,12,3,100),
Line.new(11,12,13,3,100),
Line.new(12,7,15,3,150),
Line.new(13,15,11,2),
Line.new(14,16,12,2),
Line.new(15,14,13,2),
Line.new(16,14,17,3,150),
Line.new(17,17,18,3,150),
Line.new(18,18,19,3,150),
Line.new(19,19,20,3,150),
Line.new(20,20,21,2),
Line.new(21,7,22,2),
Line.new(22,22,23,2),
Line.new(23,8,20,2),
Line.new(24,21,26,2),
Line.new(25,26,25,2),
Line.new(26,25,24,2),
Line.new(27,27,24,2),
Line.new(28,27,28,4,50),
Line.new(29,28,29,4,50),
Line.new(30,30,24,2),
Line.new(31,30,31,2),
Line.new(32,31,32,3,100),
Line.new(33,32,33,3,100),
Line.new(34,26,34,3,100),
Line.new(35,34,36,2),
Line.new(36,35,37,2),
Line.new(37,38,37,2),
Line.new(38,39,40,2),
Line.new(39,40,41,4,50),
Line.new(40,41,42,4,50),
Line.new(41,42,43,4,50),
Line.new(42,23,35,4,100),
Line.new(43,43,44,2),
Line.new(44,44,45,3,150),
Line.new(45,45,46,3,150),
Line.new(46,46,47,3,150),
Line.new(47,47,48,3,150),
Line.new(48,48,38,3,150),
Line.new(49,50,49,3,100),
Line.new(50,49,51,3,100),
Line.new(51,51,52,3,100),
Line.new(52,52,53,3,100),
Line.new(53,45,49,2),
Line.new(54,44,54,4,150),
Line.new(55,54,55,2),
Line.new(56,56,55,2),
Line.new(57,57,55,2),
Line.new(58,37,61,2),
Line.new(59,61,58,2),
Line.new(60,60,59,2),
Line.new(61,59,57,3,100),
Line.new(62,57,61,3,100),
Line.new(63,33,62,2),
Line.new(64,62,63,2),
Line.new(65,58,63,2),
Line.new(66,63,64,3,50),
Line.new(67,64,65,3,50),
Line.new(68,65,66,2),
Line.new(69,66,67,4,100),
Line.new(70,67,68,4,100),
Line.new(71,58,69,2),
Line.new(72,36,70,2),
Line.new(73,71,70,2),
Line.new(74,74,73,2),
Line.new(75,73,72,2),
Line.new(76,71,74,3,100),
Line.new(77,76,77,3,100),
Line.new(78,77,78,3,100),
Line.new(79,78,79,3,100),
Line.new(80,79,80,3,100),
Line.new(81,75,72,2),
Line.new(82,75,76,2),
Line.new(83,80,81,2),
Line.new(84,81,82,4,50),
Line.new(85,84,85,2),
Line.new(86,72,83,2),
Line.new(87,84,83,2),
Line.new(88,86,87,2),
Line.new(89,87,88,2),
Line.new(90,85,86,3,50),
Line.new(91,88,89,3,50),
Line.new(92,92,95,2),
Line.new(93,93,94,2),
Line.new(94,91,92,4,100),
Line.new(95,92,93,4,100),
Line.new(96,89,91,2),
Line.new(97,90,96,2),
Line.new(98,80,100,2),
Line.new(99,99,100,2),
Line.new(100,99,98,2),
Line.new(101,97,98,2),
Line.new(102,96,97,3,50),
]

end





 

 

Questa è la demo con tutti gli script necessari per il funzionamento della sferografia

http://www.mediafire.com/?u3up2fo84yv5ry4

 

 

 

 

____________Nuovo Problema______________

 

Leggendo attentamente lo script con calma ho capito come fare :) . Infine è semplice xd .

Adesso sorge un'altro problema in questo script

 

class Tidus < Game_Actor
attr_accessor :turbopts
attr_accessor :turbotype
attr_accessor :ap
attr_accessor :current_node
attr_reader :level_max
attr_accessor :level_used
attr_reader :grid_color

def setup(actor_id)
@ap = 0
@ap_increase = 200
@ap_linear = 40000
@turbopts=0
@turbotype = 1
@turbomax = 1000
@level_max = 0
@level_used = 0
super(actor_id)
@current_node = RPG::ACTORS[actor_id][1]
@grid_color = RPG::ACTORS[actor_id][0]
end
#--------------------------------------------------------------------------
def base_maxhp
n = $data_actors[@actor_id].parameters[0, @level]
if $game_party == nil
return n
end
for node in $game_party.nodes
if node.type == 5 and node.learnset[@actor_id]
n += node.value
end
end
return n
end
#--------------------------------------------------------------------------
def base_maxsp
n = $data_actors[@actor_id].parameters[1, @level]
if $game_party == nil
return n
end
for node in $game_party.nodes
if node.type == 6 and node.learnset[@actor_id]
n += node.value
end
end
return n
end
#--------------------------------------------------------------------------
def base_str
n = $data_actors[@actor_id].parameters[2, @level]
weapon = $data_weapons[@weapon_id]
armor1 = $data_armors[@armor1_id]
armor2 = $data_armors[@armor2_id]
armor3 = $data_armors[@armor3_id]
armor4 = $data_armors[@armor4_id]
n += weapon != nil ? weapon.str_plus : 0
n += armor1 != nil ? armor1.str_plus : 0
n += armor2 != nil ? armor2.str_plus : 0
n += armor3 != nil ? armor3.str_plus : 0
n += armor4 != nil ? armor4.str_plus : 0
for node in $game_party.nodes
if node.type == 7 and node.learnset[@actor_id]
n += node.value
end
end
return [[n, 1].max, 999].min
end
#--------------------------------------------------------------------------
def base_dex
n = $data_actors[@actor_id].parameters[3, @level]
weapon = $data_weapons[@weapon_id]
armor1 = $data_armors[@armor1_id]
armor2 = $data_armors[@armor2_id]
armor3 = $data_armors[@armor3_id]
armor4 = $data_armors[@armor4_id]
n += weapon != nil ? weapon.dex_plus : 0
n += armor1 != nil ? armor1.dex_plus : 0
n += armor2 != nil ? armor2.dex_plus : 0
n += armor3 != nil ? armor3.dex_plus : 0
n += armor4 != nil ? armor4.dex_plus : 0
for node in $game_party.nodes
if node.type == 11 and node.learnset[@actor_id]
n += node.value
end
end
return [[n, 1].max, 999].min
end
#--------------------------------------------------------------------------
def base_agi
n = $data_actors[@actor_id].parameters[4, @level]
weapon = $data_weapons[@weapon_id]
armor1 = $data_armors[@armor1_id]
armor2 = $data_armors[@armor2_id]
armor3 = $data_armors[@armor3_id]
armor4 = $data_armors[@armor4_id]
n += weapon != nil ? weapon.agi_plus : 0
n += armor1 != nil ? armor1.agi_plus : 0
n += armor2 != nil ? armor2.agi_plus : 0
n += armor3 != nil ? armor3.agi_plus : 0
n += armor4 != nil ? armor4.agi_plus : 0
for node in $game_party.nodes
if node.type == 12 and node.learnset[@actor_id]
n += node.value
end
end
return [[n, 1].max, 999].min
end
#--------------------------------------------------------------------------
def base_int
n = $data_actors[@actor_id].parameters[5, @level]
weapon = $data_weapons[@weapon_id]
armor1 = $data_armors[@armor1_id]
armor2 = $data_armors[@armor2_id]
armor3 = $data_armors[@armor3_id]
armor4 = $data_armors[@armor4_id]
n += weapon != nil ? weapon.int_plus : 0
n += armor1 != nil ? armor1.int_plus : 0
n += armor2 != nil ? armor2.int_plus : 0
n += armor3 != nil ? armor3.int_plus : 0
n += armor4 != nil ? armor4.int_plus : 0
for node in $game_party.nodes
if node.type == 9 and node.learnset[@actor_id]
n += node.value
end
end
return [[n, 1].max, 999].min
end
#--------------------------------------------------------------------------
def base_atk
weapon = $data_weapons[@weapon_id]
n = weapon != nil ? weapon.atk : 0
for node in $game_party.nodes
if node.type == 14 and node.learnset[@actor_id]
n += node.value
end
end
return [[n, 1].max, 999].min
end
#--------------------------------------------------------------------------
def base_pdef
weapon = $data_weapons[@weapon_id]
armor1 = $data_armors[@armor1_id]
armor2 = $data_armors[@armor2_id]
armor3 = $data_armors[@armor3_id]
armor4 = $data_armors[@armor4_id]
n = weapon != nil ? weapon.pdef : 0
n += armor1 != nil ? armor1.pdef : 0
n += armor2 != nil ? armor2.pdef : 0
n += armor3 != nil ? armor3.pdef : 0
n += armor4 != nil ? armor4.pdef : 0
for node in $game_party.nodes
if node.type == 8 and node.learnset[@actor_id]
n += node.value
end
end
return [[n, 1].max, 999].min
end
#--------------------------------------------------------------------------
def base_mdef
weapon = $data_weapons[@weapon_id]
armor1 = $data_armors[@armor1_id]
armor2 = $data_armors[@armor2_id]
armor3 = $data_armors[@armor3_id]
armor4 = $data_armors[@armor4_id]
n = weapon != nil ? weapon.mdef : 0
n += armor1 != nil ? armor1.mdef : 0
n += armor2 != nil ? armor2.mdef : 0
n += armor3 != nil ? armor3.mdef : 0
n += armor4 != nil ? armor4.mdef : 0
for node in $game_party.nodes
if node.type == 10 and node.learnset[@actor_id]
n += node.value
end
end
return [[n, 1].max, 999].min
end
#--------------------------------------------------------------------------
def base_eva
armor1 = $data_armors[@armor1_id]
armor2 = $data_armors[@armor2_id]
armor3 = $data_armors[@armor3_id]
armor4 = $data_armors[@armor4_id]
n = armor1 != nil ? armor1.eva : 0
n += armor2 != nil ? armor2.eva : 0
n += armor3 != nil ? armor3.eva : 0
n += armor4 != nil ? armor4.eva : 0
for node in $game_party.nodes
if node.type == 13 and node.learnset[@actor_id]
n += node.value
end
end
return [[n, 1].max, 999].min
end
#--------------------------------------------------------------------------
def gain_ap(ap)
@ap= @ap + ap
ap = @ap
l = 0
while(1)
if l*@ap_increase <= @ap_linear
ap-=l*@ap_increase
else
ap-=@ap_linear
end
if ap <= 0
break
end
l+=1
end
@level_max = l
end
#--------------------------------------------------------------------------
def exp=(exp)
gain_ap(exp-@exp)
end
#--------------------------------------------------------------------------
def level
return @level_max - @level_used
end

end





class Game_Party

attr_accessor :nodes
attr_accessor :lines

alias _reinit10 initialize
def initialize
_reinit10
@nodes = RPG::NODES.clone
@lines = RPG::LINES.clone
end

end

 

Cioè non è un problema funziona tutto perfettamente ma quando ricevo EXP (che dovrebbe essere Ap)

L'exp non aumenta ma comunque il personaggio livella. Vorrei vedere L'exp (o Ap) aumentare.

Utilizzando nel battle result o nel menù draw_actor_ap(actor, x + 120, y + 55) mi dà errore.

Utilizzando draw_actor_exp(actor, x + 120, y + 55) L'exp rimane ferma.

Dovrei andare a ritoccare lo script windows_base forse? oppure sistemare lo script postato sopra

nello spoiler >_< ma non so cosa inserirci .

Come posso risolvere? grazie :) .

Edited by emanuelespeed

1° Progetto http://www.rpg2s.net/forum/index.php/topic/17667-cheran-e-il-libro-magico/

Genere : Jrpg

Titolo: Cheran e il libro magico

Programma: Rpg Maker Vx Ace

Percentuale completamento: 5%

Orario di gioco attuale 1h 20m

__________________________

 

2° Progetto a presto il link al progetto...

Genere : Jrpg

Titolo: Kyros e la linfa magica

Programma: Rpg Maker Xp

Prime Immagini (Consigli & Modifiche): http://www.rpg2s.net/forum/index.php/topic/17980-immagini-battaglia-e-altro-consiglimodifiche-ecc/

Link to comment
Share on other sites

7 answers to this question

Recommended Posts

  • 0

Up.

 

 

Leggendo attentamente lo script con calma ho capito come fare :) . Infine è semplice xd .

Adesso sorge un'altro problema in questo script

 

class Tidus < Game_Actor
attr_accessor :turbopts
attr_accessor :turbotype
attr_accessor :ap
attr_accessor :current_node
attr_reader :level_max
attr_accessor :level_used
attr_reader :grid_color

def setup(actor_id)
@ap = 0
@ap_increase = 200
@ap_linear = 40000
@turbopts=0
@turbotype = 1
@turbomax = 1000
@level_max = 0
@level_used = 0
super(actor_id)
@current_node = RPG::ACTORS[actor_id][1]
@grid_color = RPG::ACTORS[actor_id][0]
end
#--------------------------------------------------------------------------
def base_maxhp
n = $data_actors[@actor_id].parameters[0, @level]
if $game_party == nil
return n
end
for node in $game_party.nodes
if node.type == 5 and node.learnset[@actor_id]
n += node.value
end
end
return n
end
#--------------------------------------------------------------------------
def base_maxsp
n = $data_actors[@actor_id].parameters[1, @level]
if $game_party == nil
return n
end
for node in $game_party.nodes
if node.type == 6 and node.learnset[@actor_id]
n += node.value
end
end
return n
end
#--------------------------------------------------------------------------
def base_str
n = $data_actors[@actor_id].parameters[2, @level]
weapon = $data_weapons[@weapon_id]
armor1 = $data_armors[@armor1_id]
armor2 = $data_armors[@armor2_id]
armor3 = $data_armors[@armor3_id]
armor4 = $data_armors[@armor4_id]
n += weapon != nil ? weapon.str_plus : 0
n += armor1 != nil ? armor1.str_plus : 0
n += armor2 != nil ? armor2.str_plus : 0
n += armor3 != nil ? armor3.str_plus : 0
n += armor4 != nil ? armor4.str_plus : 0
for node in $game_party.nodes
if node.type == 7 and node.learnset[@actor_id]
n += node.value
end
end
return [[n, 1].max, 999].min
end
#--------------------------------------------------------------------------
def base_dex
n = $data_actors[@actor_id].parameters[3, @level]
weapon = $data_weapons[@weapon_id]
armor1 = $data_armors[@armor1_id]
armor2 = $data_armors[@armor2_id]
armor3 = $data_armors[@armor3_id]
armor4 = $data_armors[@armor4_id]
n += weapon != nil ? weapon.dex_plus : 0
n += armor1 != nil ? armor1.dex_plus : 0
n += armor2 != nil ? armor2.dex_plus : 0
n += armor3 != nil ? armor3.dex_plus : 0
n += armor4 != nil ? armor4.dex_plus : 0
for node in $game_party.nodes
if node.type == 11 and node.learnset[@actor_id]
n += node.value
end
end
return [[n, 1].max, 999].min
end
#--------------------------------------------------------------------------
def base_agi
n = $data_actors[@actor_id].parameters[4, @level]
weapon = $data_weapons[@weapon_id]
armor1 = $data_armors[@armor1_id]
armor2 = $data_armors[@armor2_id]
armor3 = $data_armors[@armor3_id]
armor4 = $data_armors[@armor4_id]
n += weapon != nil ? weapon.agi_plus : 0
n += armor1 != nil ? armor1.agi_plus : 0
n += armor2 != nil ? armor2.agi_plus : 0
n += armor3 != nil ? armor3.agi_plus : 0
n += armor4 != nil ? armor4.agi_plus : 0
for node in $game_party.nodes
if node.type == 12 and node.learnset[@actor_id]
n += node.value
end
end
return [[n, 1].max, 999].min
end
#--------------------------------------------------------------------------
def base_int
n = $data_actors[@actor_id].parameters[5, @level]
weapon = $data_weapons[@weapon_id]
armor1 = $data_armors[@armor1_id]
armor2 = $data_armors[@armor2_id]
armor3 = $data_armors[@armor3_id]
armor4 = $data_armors[@armor4_id]
n += weapon != nil ? weapon.int_plus : 0
n += armor1 != nil ? armor1.int_plus : 0
n += armor2 != nil ? armor2.int_plus : 0
n += armor3 != nil ? armor3.int_plus : 0
n += armor4 != nil ? armor4.int_plus : 0
for node in $game_party.nodes
if node.type == 9 and node.learnset[@actor_id]
n += node.value
end
end
return [[n, 1].max, 999].min
end
#--------------------------------------------------------------------------
def base_atk
weapon = $data_weapons[@weapon_id]
n = weapon != nil ? weapon.atk : 0
for node in $game_party.nodes
if node.type == 14 and node.learnset[@actor_id]
n += node.value
end
end
return [[n, 1].max, 999].min
end
#--------------------------------------------------------------------------
def base_pdef
weapon = $data_weapons[@weapon_id]
armor1 = $data_armors[@armor1_id]
armor2 = $data_armors[@armor2_id]
armor3 = $data_armors[@armor3_id]
armor4 = $data_armors[@armor4_id]
n = weapon != nil ? weapon.pdef : 0
n += armor1 != nil ? armor1.pdef : 0
n += armor2 != nil ? armor2.pdef : 0
n += armor3 != nil ? armor3.pdef : 0
n += armor4 != nil ? armor4.pdef : 0
for node in $game_party.nodes
if node.type == 8 and node.learnset[@actor_id]
n += node.value
end
end
return [[n, 1].max, 999].min
end
#--------------------------------------------------------------------------
def base_mdef
weapon = $data_weapons[@weapon_id]
armor1 = $data_armors[@armor1_id]
armor2 = $data_armors[@armor2_id]
armor3 = $data_armors[@armor3_id]
armor4 = $data_armors[@armor4_id]
n = weapon != nil ? weapon.mdef : 0
n += armor1 != nil ? armor1.mdef : 0
n += armor2 != nil ? armor2.mdef : 0
n += armor3 != nil ? armor3.mdef : 0
n += armor4 != nil ? armor4.mdef : 0
for node in $game_party.nodes
if node.type == 10 and node.learnset[@actor_id]
n += node.value
end
end
return [[n, 1].max, 999].min
end
#--------------------------------------------------------------------------
def base_eva
armor1 = $data_armors[@armor1_id]
armor2 = $data_armors[@armor2_id]
armor3 = $data_armors[@armor3_id]
armor4 = $data_armors[@armor4_id]
n = armor1 != nil ? armor1.eva : 0
n += armor2 != nil ? armor2.eva : 0
n += armor3 != nil ? armor3.eva : 0
n += armor4 != nil ? armor4.eva : 0
for node in $game_party.nodes
if node.type == 13 and node.learnset[@actor_id]
n += node.value
end
end
return [[n, 1].max, 999].min
end
#--------------------------------------------------------------------------
def gain_ap(ap)
@ap= @ap + ap
ap = @ap
l = 0
while(1)
if l*@ap_increase <= @ap_linear
ap-=l*@ap_increase
else
ap-=@ap_linear
end
if ap <= 0
break
end
l+=1
end
@level_max = l
end
#--------------------------------------------------------------------------
def exp=(exp)
gain_ap(exp-@exp)
end
#--------------------------------------------------------------------------
def level
return @level_max - @level_used
end

end





class Game_Party

attr_accessor :nodes
attr_accessor :lines

alias _reinit10 initialize
def initialize
_reinit10
@nodes = RPG::NODES.clone
@lines = RPG::LINES.clone
end

end

 

Cioè non è un problema funziona tutto perfettamente ma quando ricevo EXP (che dovrebbe essere Ap)

L'exp non aumenta ma comunque il personaggio livella. Vorrei vedere L'exp (o Ap) aumentare.

Utilizzando nel battle result o nel menù draw_actor_ap(actor, x + 120, y + 55) mi dà errore.

Utilizzando draw_actor_exp(actor, x + 120, y + 55) L'exp rimane ferma.

Dovrei andare a ritoccare lo script windows_base forse? oppure sistemare lo script postato sopra

nello spoiler >_< ma non so cosa inserirci .

Come posso risolvere? grazie :) .

1° Progetto http://www.rpg2s.net/forum/index.php/topic/17667-cheran-e-il-libro-magico/

Genere : Jrpg

Titolo: Cheran e il libro magico

Programma: Rpg Maker Vx Ace

Percentuale completamento: 5%

Orario di gioco attuale 1h 20m

__________________________

 

2° Progetto a presto il link al progetto...

Genere : Jrpg

Titolo: Kyros e la linfa magica

Programma: Rpg Maker Xp

Prime Immagini (Consigli & Modifiche): http://www.rpg2s.net/forum/index.php/topic/17980-immagini-battaglia-e-altro-consiglimodifiche-ecc/

Link to comment
Share on other sites

  • 0

In che senso non la vedi aumentare? Puoi allegare uno screen magari?

-Avatar imperioso-Teca delle glorie(lol):

 

 

Terzo posto Poetry&Letterature Contest(inglesizzato perchè fa serio)

http://img806.imageshack.us/img806/3015/terzoposto.png

Il 3 grasso di Thokk XDScarica La Guerra di Piero

 

"Il segreto per un buon soufflè di patate...sono le patate! - Maestro Yoda (Lo Svarione degli Anelli 3, Il ritorno del Padrino x°°°D)

Primo Ren, conserverò gelosamente xD - Il primo ba-*hem* Ren non si scorda mai.Chazzate

 

Apo esegue un incantesimo sciamanico molto potente e molto duro per cui si concentra in silenzio per molti minuti, finchè, ritenendosi pronto, riesce infine ad evocare il Grande Spirito che col suo immenso potere disintegra tutti

http://www.iaza.com/work/110609C/iaza11020742952300.gifUn dono di Hash (<3)

 

 

http://i1141.photobucket.com/albums/n597/RazakGik/Psy-Kita-Kita.gif

 

 

 

 

 

 

Apo resta per me un mistero.

 

Link to comment
Share on other sites

  • 0

In che senso non la vedi aumentare? Puoi allegare uno screen magari?

Ho fatto un video

http://www.youtube.com/watch?v=5r8ibksL6vw&feature=youtu.be

Comunque nello script originale è uguale l'exp non aumenta,

Questa è la demo originale http://www.mediafire.com/?u3up2fo84yv5ry4, vedete se riuscite a sistemare il problema >_< .

Lo script interessato alla modifica dovrebbe essere " Game_Actor=>Tidus " .

1° Progetto http://www.rpg2s.net/forum/index.php/topic/17667-cheran-e-il-libro-magico/

Genere : Jrpg

Titolo: Cheran e il libro magico

Programma: Rpg Maker Vx Ace

Percentuale completamento: 5%

Orario di gioco attuale 1h 20m

__________________________

 

2° Progetto a presto il link al progetto...

Genere : Jrpg

Titolo: Kyros e la linfa magica

Programma: Rpg Maker Xp

Prime Immagini (Consigli & Modifiche): http://www.rpg2s.net/forum/index.php/topic/17980-immagini-battaglia-e-altro-consiglimodifiche-ecc/

Link to comment
Share on other sites

  • 0

In generale qualcosa non mi torna... nella demo provo a spostarmi nella sferografia, in base a come mi sposto, mi scende l'AP(e qui mi torna)... ma siccome è equivalente all'EXP, scende anche il livello... ora, non mi intendo neppure lontanamente di questo sistema e di giochi che lo utilizzano, però mi appare strano. òò

 

Comunque ho guardato e non aumenta l'exp... perché lo script non la vuole aumentare: non c'è proprio il comando XD

 

Il problema da quel che ho visto è che l'esperienza e il livello standard di RPG Maker vengono usati tipo piattaforma per il sistema di AP e "livelli" sulla sferografia.

 

Ora, vuoi mantenere entrambi o solo quello della sferografia?

-Avatar imperioso-Teca delle glorie(lol):

 

 

Terzo posto Poetry&Letterature Contest(inglesizzato perchè fa serio)

http://img806.imageshack.us/img806/3015/terzoposto.png

Il 3 grasso di Thokk XDScarica La Guerra di Piero

 

"Il segreto per un buon soufflè di patate...sono le patate! - Maestro Yoda (Lo Svarione degli Anelli 3, Il ritorno del Padrino x°°°D)

Primo Ren, conserverò gelosamente xD - Il primo ba-*hem* Ren non si scorda mai.Chazzate

 

Apo esegue un incantesimo sciamanico molto potente e molto duro per cui si concentra in silenzio per molti minuti, finchè, ritenendosi pronto, riesce infine ad evocare il Grande Spirito che col suo immenso potere disintegra tutti

http://www.iaza.com/work/110609C/iaza11020742952300.gifUn dono di Hash (<3)

 

 

http://i1141.photobucket.com/albums/n597/RazakGik/Psy-Kita-Kita.gif

 

 

 

 

 

 

Apo resta per me un mistero.

 

Link to comment
Share on other sites

  • 0

In generale qualcosa non mi torna... nella demo provo a spostarmi nella sferografia, in base a come mi sposto, mi scende l'AP(e qui mi torna)... ma siccome è equivalente all'EXP, scende anche il livello... ora, non mi intendo neppure lontanamente di questo sistema e di giochi che lo utilizzano, però mi appare strano. òò

 

Comunque ho guardato e non aumenta l'exp... perché lo script non la vuole aumentare: non c'è proprio il comando XD

 

Il problema da quel che ho visto è che l'esperienza e il livello standard di RPG Maker vengono usati tipo piattaforma per il sistema di AP e "livelli" sulla sferografia.

 

Ora, vuoi mantenere entrambi o solo quello della sferografia?

A me interessa che come sullo script ogni 200 AP livelli 1 livello è che appaiano gli AP quando li ricevo a fine battaglia e nel menù. Poi cambiare il nome degli ap in exp.

Infine dobbiamo tenere solo l'ap della Sferografia quella originale (exp) non mi interessa. :) .

1° Progetto http://www.rpg2s.net/forum/index.php/topic/17667-cheran-e-il-libro-magico/

Genere : Jrpg

Titolo: Cheran e il libro magico

Programma: Rpg Maker Vx Ace

Percentuale completamento: 5%

Orario di gioco attuale 1h 20m

__________________________

 

2° Progetto a presto il link al progetto...

Genere : Jrpg

Titolo: Kyros e la linfa magica

Programma: Rpg Maker Xp

Prime Immagini (Consigli & Modifiche): http://www.rpg2s.net/forum/index.php/topic/17980-immagini-battaglia-e-altro-consiglimodifiche-ecc/

Link to comment
Share on other sites

  • 0

Quindi senza i livelli tradizionali, solo con livelli "temporanei" da spendere giusto?

Se tanto non ci sono i livelli standard, ti faccio un paio di modifiche ed è a posto(faccio scrivere gli AP/EXP ma tolgo il numero degli EXP per livello(x/25 per esempio).

Domani te lo faccio e posto :sisi:

-Avatar imperioso-Teca delle glorie(lol):

 

 

Terzo posto Poetry&Letterature Contest(inglesizzato perchè fa serio)

http://img806.imageshack.us/img806/3015/terzoposto.png

Il 3 grasso di Thokk XDScarica La Guerra di Piero

 

"Il segreto per un buon soufflè di patate...sono le patate! - Maestro Yoda (Lo Svarione degli Anelli 3, Il ritorno del Padrino x°°°D)

Primo Ren, conserverò gelosamente xD - Il primo ba-*hem* Ren non si scorda mai.Chazzate

 

Apo esegue un incantesimo sciamanico molto potente e molto duro per cui si concentra in silenzio per molti minuti, finchè, ritenendosi pronto, riesce infine ad evocare il Grande Spirito che col suo immenso potere disintegra tutti

http://www.iaza.com/work/110609C/iaza11020742952300.gifUn dono di Hash (<3)

 

 

http://i1141.photobucket.com/albums/n597/RazakGik/Psy-Kita-Kita.gif

 

 

 

 

 

 

Apo resta per me un mistero.

 

Link to comment
Share on other sites

  • 0

Quindi senza i livelli tradizionali, solo con livelli "temporanei" da spendere giusto?

Se tanto non ci sono i livelli standard, ti faccio un paio di modifiche ed è a posto(faccio scrivere gli AP/EXP ma tolgo il numero degli EXP per livello(x/25 per esempio).

Domani te lo faccio e posto :sisi:

Si, cosi. Perfetto ^____^ .

L'importante che quando uccido un mob che da x esempio 50 ap essa aumenti a fine battaglia 50/200 e quando livella ritorna a 0/200 e cosi via.

Grazie milleeee :smile:

1° Progetto http://www.rpg2s.net/forum/index.php/topic/17667-cheran-e-il-libro-magico/

Genere : Jrpg

Titolo: Cheran e il libro magico

Programma: Rpg Maker Vx Ace

Percentuale completamento: 5%

Orario di gioco attuale 1h 20m

__________________________

 

2° Progetto a presto il link al progetto...

Genere : Jrpg

Titolo: Kyros e la linfa magica

Programma: Rpg Maker Xp

Prime Immagini (Consigli & Modifiche): http://www.rpg2s.net/forum/index.php/topic/17980-immagini-battaglia-e-altro-consiglimodifiche-ecc/

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...